рдХреНрдпрд╛ рд╣реБрдХ рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреЗ рд╣реИрдВ?

рдЪреВрдВрдХрд┐ рд╣реБрдХ рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдП, рдЗрд╕рд▓рд┐рдП рдХрдИ рд╕рд╡рд╛рд▓ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рд╡реЗ Redux рдХреА рдЬрдЧрд╣ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рд╣реБрдХ рдФрд░ рд░реЗрдбрдХреНрд╕ рдмрд╣реБрдд рдХрдо рд╣реИрдВред рд╣реБрдХ рд╣рдореЗрдВ рд░рд╛рдЬреНрдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рдирдП рдЕрджреНрднреБрдд рдЕрд╡рд╕рд░ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд╡реЗ рдПрдкреАрдЖрдИ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рд╡реЗ рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдХрд░ рд╕рдХреЗрдВ рдХрд┐ рдЗрд╕рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреНрдпрд╛ рд╕рдВрднрд╡ рдерд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣реБрдХ рдПрдкреАрдЖрдИ рдиреЗ рд░рд┐рдПрдХреНрдЯ рдХреА рд░рд╛рдЬреНрдп-рдкреНрд░рдмрдВрдзрди рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛ рджрд┐рдпрд╛ рд╣реИред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рд░рд╛рдЬреНрдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдИ рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдЬреЛ рдХрд┐ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдШрдЯрдХреЛрдВ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдереЗред рдЕрдм рдореИрдВ рдкрд╣рд▓реЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдмрд╛рд░ рдШрдЯрдХреЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдореИрдВ рдпрд╣ рддрднреА рдХрд░рддрд╛ рд╣реВрдВ рдЬрдм рдпрд╣ рдЙрдкрдпреБрдХреНрдд рд╣реЛред



рд░рд┐рдПрдХреНрдЯ рд╣реБрдХ рдФрд░ рд░реЗрдбрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рд╕рдордЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЙрди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬрд┐рдирдореЗрдВ рдЖрдорддреМрд░ рдкрд░ рд░реЗрдбрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Redux рдХреНрдпрд╛ рд╣реИ?


Redux рдПрдХ рдРрд╕реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ, рдЬреЛ рдЕрдиреБрдорд╛рдирд┐рдд рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрдЯреЗрдЯ рд╕реНрдЯреЛрд░реЗрдЬ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреА рд╣реИред рдпрд╣ рдПрдХ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рднреА рд╣реИ рдЬреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдХреАрдХреГрдд рд╣реЛрддреА рд╣реИред

рдпрд╣рд╛рдБ Redux рдХреА рдореБрдЦреНрдп рддрд╛рдХрддреЗрдВ рд╣реИрдВ:

  • рд░рд╛рдЬреНрдп рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдХ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ (рд╢реБрджреНрдз рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдпреЛрдЬрди рдореЗрдВ, рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рдХ рджреГрд╢реНрдп рддрддреНрд╡реЛрдВ рдХреЛ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИ)ред
  • рд▓реЗрди-рджреЗрди рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред
  • I / O рддрдВрддреНрд░ рдФрд░ рджреБрд╖реНрдкреНрд░рднрд╛рд╡реЛрдВ рд╕реЗ рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдХрд╛ рдЕрд▓рдЧрд╛рд╡ред
  • рд░рд╛рдЬреНрдп рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЗрдЯрд╛ рдХреЗ рдПрдХрд▓ рд╕реНрд░реЛрдд рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ред
  • рд╡рд┐рднрд┐рдиреНрди рдШрдЯрдХреЛрдВ рдореЗрдВ рд░рд╛рдЬреНрдп рдХреЗ рд╕рд╛рде рд╕рд╣рдпреЛрдЧ рдХрд╛ рдЖрд╕рд╛рди рд╕рдВрдЧрдардиред
  • рд▓реЗрди-рджреЗрди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЙрдкрдХрд░рдг (рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд▓реЙрдЧрд┐рдВрдЧ)ред
  • рдкреНрд░реЛрдЧреНрд░рд╛рдо рдирд┐рд╖реНрдкрд╛рджрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ (рдЯрд╛рдЗрдо рдЯреНрд░реИрд╡рд▓ рдбреАрдмрдЧрд┐рдВрдЧ, рдЯреАрдЯреАрдбреА) рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдФрд░ рдЦреЗрд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рдбрд┐рдмрдЧрд┐рдВрдЧред

рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, Redux рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред Redux рдЙрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИред рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдЦреЛрдЬрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рд░рд┐рдПрдХреНрдЯ рд╣реБрдХ рдХреНрдпрд╛ рд╣реИрдВ?


рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рд╣реБрдХ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рдЬрдм рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдШрдЯрдХреЛрдВ рдХреЗ рд░рд╛рдЬреНрдп рдХрд╛ рдПрдХ рдПрдирд╛рд▓реЙрдЧ рдФрд░ рдЙрдирдХреЗ рдЬреАрд╡рди рдЪрдХреНрд░ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рдПрдирд╛рд▓реЙрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред 16.8 рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рд╣реБрдХ рджрд┐рдЦрд╛рдИ рджрд┐рдПред

рд╣реБрдХ рдХреА рдореБрдЦреНрдп рд╢рдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИрдВ:

  • рдХреНрд▓рд╛рд╕-рдЖрдзрд╛рд░рд┐рдд рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдШрдЯрдХ рдЬреАрд╡рди рдЪрдХреНрд░ рдХреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рд░рд╛рдЬреНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ рд╕рдВрднрд╛рд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред
  • рдХрдИ рдЬреАрд╡рди рдЪрдХреНрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕рдорд╛рди рддрд░реНрдХ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рд╣реА рдШрдЯрдХ рд╕реНрдерд╛рди рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рддрд░реНрдХ рдХрд╛ рд╕рдВрдпреБрдХреНрдд рднрдВрдбрд╛рд░рдгред
  • рдШрдЯрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рддрдВрддреНрд░ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ (рдпрд╣ рд░реЗрдВрдбрд░ рдкреНрд░реЛрдк рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рд╕рдорд╛рди рд╣реИ)ред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпреЗ рдорд╣рд╛рди рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, Redux рдХреЛ рднрд╛рд░реА рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред рд░рд┐рдПрдХреНрдЯ рд╣реБрдХ рдирд┐рдпрддрд╛рддреНрдордХ рд░рд╛рдЬреНрдп рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдореЗрд╢рд╛ рд░рд┐рдПрдХреНрдЯ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд░рд╣рд╛ рд╣реИ, рдФрд░ Redux рдирд┐рд░реНрдзрд╛рд░рдХ рд░рд╛рдЬреНрдп рдореЙрдбрд▓ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИред рдпрд╣ рдХреИрд╕реЗ рд░рд┐рдПрдХреНрдЯ рджреГрд╢реНрдп рддрддреНрд╡реЛрдВ рдХреЗ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдирд┐рдпрддрддреНрд╡рд╡рд╛рдж рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдЕрддрд┐рд╢рдпреЛрдХреНрддрд┐ рдХреЗ рдмрд┐рдирд╛, рд░рд┐рдПрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбреНрд░рд╛рдЗрд╡рд┐рдВрдЧ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред

рдпрджрд┐ рдЖрдк рд╣реБрдХ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-redux рдПрдкреАрдЖрдИ рдЬреИрд╕реЗ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ , рдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ , рддреЛ рдЖрдкрдХреЛ рдкрддрд╛ рдЪрд▓реЗрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдЪреБрдирдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ - рд╣реБрдХ рдпрд╛ рд░реЗрдбрдХреНрд╕ред рдЖрдк рдЗрди рддрдХрдиреАрдХреЛрдВ рдХрд╛ рд╕рдВрдпреЛрдЬрди рдФрд░ рд╕рдВрдпреЛрдЬрди рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╣реБрдХ рдХреА рдЬрдЧрд╣ рдХреНрдпрд╛?


рд╣реБрдХ рдПрдкреАрдЖрдИ рдХреЗ рдЖрдЧрдорди рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛:


рд╣реБрдХ рдХреА рдЬрдЧрд╣ рдХреНрдпрд╛ рдирд╣реАрдВ рд╣реИ?


рдореИрдВ рдЕрднреА рднреА рдЕрдХреНрд╕рд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ:

  • Redux - рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдХрд╛рд░рдгреЛрдВ рд╕реЗред
  • рдЙрдЪреНрдЪ рдХреНрд░рдо рдХреЗ рдШрдЯрдХ - рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдШрдЯрдХ рд░рдЪрдирд╛ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рдЬрд╣рд╛рдВ рдореБрдЭреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕рднреА рдпрд╛ рдХреБрдЫ рджреГрд╢реНрдп рдШрдЯрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЭрд╛ рдПрдВрдб-рдЯреВ-рдПрдВрдб рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореЗрдВ Redux рдкреНрд░рджрд╛рддрд╛рдУрдВ, рдкреЗрдЬ рд▓реЗрдЖрдЙрдЯ рд╕рд┐рд╕реНрдЯрдо, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕рдорд░реНрдерди рдкреНрд░рдгрд╛рд▓реА, рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдФрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЙрдкрдХрд░рдг, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг рдЙрдкрдХрд░рдг, рдФрд░ рдЗрд╕реА рддрд░рд╣ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
  • рдХрдВрдЯреЗрдирд░ рдШрдЯрдХреЛрдВ рдФрд░ рдШрдЯрдХреЛрдВ рдХреЗ рдмреАрдЪ рдЕрд▓рдЧрд╛рд╡ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рджреГрд╢реНрдп рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдкреНрд░рддрд┐рд░реВрдкрдХрддрд╛ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХреНрд╖рдорддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдпрд╣ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рднрд╛рд╡ рдФрд░ рд╢реБрджреНрдз рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реИред

рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдм рдХрд░реЗрдВ?


рд╣рд░ рдЖрд╡реЗрджрди рдореЗрдВ рдФрд░ рд╣рд░ рдШрдЯрдХ рдореЗрдВ Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рджреГрд╢реНрдп рдШрдЯрдХ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЕрдЧрд░ рдпрд╣ рдбреЗрдЯрд╛ рдХреЛ рдирд╣реАрдВ рдмрдЪрд╛рддрд╛ рд╣реИ рдФрд░ рд╡рд╣рд╛рдВ рд╕реЗ рдбреЗрдЯрд╛ рд▓реЛрдб рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ I / O рд╕рдВрдЪрд╛рд▓рди рдЗрд╕рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЬрдЯрд┐рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдпреЛрдЧреНрдп рдХрд╛рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪ рд╕рдХрддрд╛ред

рдЙрдиреНрд╣реАрдВ рдШрдЯрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ:

  • рд╡реЗ рдиреЗрдЯрд╡рд░реНрдХ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред
  • рд╡реЗ рд░рд╛рдЬреНрдп рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╡рд╣рд╛рдВ рд╕реЗ рд▓реЛрдб рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред
  • рд╡реЗ рдЕрдиреНрдп рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рд░рд╛рдЬреНрдп рдХреЛ рд╕рд╛рдЭрд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЙрдирдХреЗ рд╡рдВрд╢рдЬ рдирд╣реАрдВ рд╣реИрдВред
  • рдЙрдирдХреЗ рдкрд╛рд╕ рдЕрдкрдиреА рдЦреБрдж рдХреА рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕реНрдерд┐рддрд┐ рдирд╣реАрдВ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рдбреЗрдЯрд╛ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреБрдЫ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдорд╛рдирдХ рд░рд┐рдПрдХреНрдЯ рдШрдЯрдХ рд░рд╛рдЬреНрдп рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЕрдЪреНрдЫрд╛ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ, рд░рд┐рдПрдХреНрдЯ рд╣реБрдХ рдЖрдкрдХреЛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рдлрд╝реЙрд░реНрдо рд░рд┐рдПрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдШрдЯрдХ рдХреЗ рд╕реНрдерд╛рдиреАрдп рд╕реНрдерд┐рддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рд╣реБрдХред

 import React, { useState } from 'react'; import t from 'prop-types'; import TextField, { Input } from '@material/react-text-field'; const noop = () => {}; const Holder = ({  itemPrice = 175,  name = '',  email = '',  id = '',  removeHolder = noop,  showRemoveButton = false, }) => {  const [nameInput, setName] = useState(name);  const [emailInput, setEmail] = useState(email); const setter = set => e => {    const { target } = e;    const { value } = target;    set(value);  }; return (    <div className="row">      <div className="holder">        <div className="holder-name">          <TextField label="Name">            <Input value={nameInput} onChange={setter(setName)} required />          </TextField>        </div>        <div className="holder-email">          <TextField label="Email">            <Input              value={emailInput}              onChange={setter(setEmail)}              type="email"              required            />          </TextField>        </div>        {showRemoveButton && (          <button            className="remove-holder"            aria-label="Remove membership"            onClick={e => {              e.preventDefault();              removeHolder(id);            }}          >            ├Ч          </button>        )}      </div>      <div className="line-item-price">${itemPrice}</div>      <style jsx>{cssHere}</style>    </div>  ); }; Holder.propTypes = {  name: t.string,  email: t.string,  itemPrice: t.number,  id: t.string,  removeHolder: t.func,  showRemoveButton: t.bool, }; export default Holder; 

name рдФрд░ email рдЗрдирдкреБрдЯ рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЙрдкрдпреЛрдЧ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ useState рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

 const [nameInput, setName] = useState(name); const [emailInput, setEmail] = useState(email); 

рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ Redux рдХреА рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдореЗрдВ рдЕрднреА рднреА removeHolder рдХреА рдПрдХ removeHolder рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рд╣реА рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХрд╛ рд╕рдВрдпреЛрдЬрди рдФрд░ рд╕рдВрдпреЛрдЬрди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд╣реИред

рдРрд╕реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдШрдЯрдХ рдХреА рд╕реНрдерд╛рдиреАрдп рд╕реНрдерд┐рддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣рдореЗрд╢рд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд░рд┐рдПрдХреНрдЯ рд╣реБрдХ рд╕реЗ рдкрд╣рд▓реЗ рдореБрдЭреЗ рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, Redux-Storage рдореЗрдВ рдШрдЯрдХ рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬрдирд╛ рдФрд░ рдЧреБрдгреЛрдВ рд╕реЗ рд░рд╛рдЬреНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкрд╣рд▓реЗ, рдПрдХ рдШрдЯрдХ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП рд╡рд░реНрдЧ-рдЖрдзрд╛рд░рд┐рдд рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рдерд╛, рд╡рд░реНрдЧ рдЧреБрдгреЛрдВ (рдпрд╛ рд╡рд░реНрдЧ рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛) рдХреА рдШреЛрд╖рдгрд╛ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░рд╛рдЬреНрдп рдХреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбреЗрдЯрд╛ рд▓рд┐рдЦрдирд╛, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдШрдЯрдХ рдХреЛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд╣реЛрдирд╛ рдкрдбрд╝рд╛ред Redux рдиреЗ Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░реВрдкреЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рднреА рдмрд╛рдд рдХреАред рдирддреАрдЬрддрди, рдкрд╣рд▓реЗ, рдореБрдЭреЗ рдпрд╣ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА рдХрд┐ рдкреНрд░рдкрддреНрд░ рдХреА рдЕрд╕реНрдерд╛рдпреА рд╕реНрдерд┐рддрд┐ рдЙрд╕реА рд╕реНрдерд╛рди рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИ рдЬрд╣рд╛рдВ рдбреЗрдЯрд╛ рд▓рдВрдмреЗ рдЬреАрд╡рдирдХрд╛рд▓ рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИред

рдЪреВрдВрдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрдиреЗ рд╕рднреА рдХрдо рдпрд╛ рдЬреНрдпрд╛рджрд╛ рдЬрдЯрд┐рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдШрдЯрдХреЛрдВ рдХреЗ рдШрдЯрдХреЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреА рдкрд╕рдВрдж рдиреЗ рдореБрдЭреЗ рдмрд╣реБрдд рд╕реЛрдЪрд╛ рдирд╣реАрдВ рдерд╛ред рдореИрдВрдиреЗ рд▓рдЧрднрдЧ рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

рдЖрдзреБрдирд┐рдХ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ, рдПрдХ рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рдирд╛ рднреА рдЖрд╕рд╛рди рд╣реИ: рдШрдЯрдХ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдорд╛рдирдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдирд╛ред

Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдм рдХрд░реЗрдВ?


рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдПрдХ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рд╢реНрди рд╣реИ: тАЬрдХреНрдпрд╛ рдореБрдЭреЗ Redux рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдм рдХреБрдЫ рдбрд╛рд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдпрджрд┐ рдореИрдВ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдХреНрдпрд╛ рдпрд╣ TTD рддрдВрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░реЗрдЧрд╛? тАЭ

Redux рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдм рдХреБрдЫ рд╣реЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЕрд╕реНрдерд╛рдпреА рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдХреБрдЫ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдмрд╣реБрдд рдмрд┐рдЦрд░реЗ рд╣реБрдП рд╣реИрдВ, рдЬреЛ рд▓реЙрдЧ рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдпрд╛ рдбреАрдмрдЧрд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдбреЗрд╡рд▓рдкрд░ рдХреЛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╢рд╛рдпрдж рдЖрдк, рдЬрдм рддрдХ рдЖрдк рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреЗ рд╕рдВрдкрд╛рджрдХ рдЖрд╡реЗрджрди рдирд╣реАрдВ рд▓рд┐рдЦ рд░рд╣реЗ рд╣реИрдВ, рдЖрдкрдХреЛ рд╣рд░ рдорд╛рдЙрд╕ рдЖрдВрджреЛрд▓рди рдпрд╛ рд╣рд░ рдХреАрд╕реНрдЯреЙрдХ рдкрд░ рд░рд╛рдЬреНрдп рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЬрдм рдЖрдк рдХрд┐рд╕реА Redux рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХреБрдЫ рдбрд╛рд▓рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрддрд░ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рд╕рд╛рде рд╣реА рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрддрд░ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рднреА рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред

рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЖрдк рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрд╛рд░рдг рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдШрдЯрдХреЛрдВ рдореЗрдВ Redux рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрдЪрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдШрдЯрдХ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рднрд┐рдиреНрди рд╣реЛрдВ:

  • рд╡реЗ I / O рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡реЗ рдПрдХ рдиреЗрдЯрд╡рд░реНрдХ рдпрд╛ рдХреБрдЫ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
  • рд╡реЗ рдбреЗрдЯрд╛ рдХреЛ рдЗрд╕рд╕реЗ рдмрдЪрд╛рддреЗ рд╣реИрдВ рдпрд╛ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВред
  • рд╡реЗ рдЕрдкрдиреЗ рд░рд╛рдЬреНрдп рдХреЗ рд╕рд╛рде рдЙрди рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЙрдирдХреЗ рд╡рдВрд╢рдЬ рдирд╣реАрдВ рд╣реИрдВред
  • рд╡реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрд╛рдкрд╛рд░рд┐рдХ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдЖрд╡реЗрджрди рдХреЗ рдЕрдиреНрдп рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЗ рд╕рд╛рде рд╕реМрджрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдпрд╛ рддреЛ - рд╡реЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рдЕрдиреНрдп рднрд╛рдЧреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдпрд╣рд╛рдБ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг TDDDay рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

 import React from 'react'; import { useDispatch, useSelector } from 'react-redux'; import { compose } from 'ramda'; import page from '../../hocs/page.js'; import Purchase from './purchase-component.js'; import { addHolder, removeHolder, getHolders } from './purchase-reducer.js'; const PurchasePage = () => {  //      // mapStateToProps  mapDispatchToProps  const dispatch = useDispatch();  const holders = useSelector(getHolders); const props = {    //           //    dispatch.    addHolder: compose(      dispatch,      addHolder    ),    removeHolder: compose(      dispatch,      removeHolder    ),    holders,  }; return <Purchase {...props} />; }; // `page` -    ,    //        . export default page(PurchasePage); 

рдпрд╣ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ DOM рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИред рдпрд╣ рдПрдХ рдкреНрд░рд╕реНрддреБрддрд┐ рдШрдЯрдХ рд╣реИред рдпрд╣ рд╣реБрдХ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛- Redux рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Redux рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред

Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣рд╛рдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рдЙрд╕ рдбреЗрдЯрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕реЗ рдпрд╣ рдкреНрд░рдкрддреНрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдЕрдиреНрдп рднрд╛рдЧреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдЦрд░реАрдж рдСрдкрд░реЗрд╢рди рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЗрд╕ рдХреЛрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд░рд╛рдЬреНрдп рдХреЗ рдЯреБрдХрдбрд╝реЗ рд╡рд┐рднрд┐рдиреНрди рдШрдЯрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рд╡реЗ рдХреЗрд╡рд▓ рдПрдХ рдШрдЯрдХ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдпрд╣ рдбреЗрдЯрд╛ рдирд╣реАрдВ рд╣реИ, рдХреЗрд╡рд▓ рдХреБрдЫ рд╕рдордп рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрдж рд╣реИред рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдерд╛рдпреА рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕реНрдХреНрд░реАрди рдкрд░ рдФрд░ рдХрдИ рд╕рддреНрд░реЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпреЗ рд╕рднреА рдкрд░рд┐рджреГрд╢реНрдп рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдШрдЯрдХ рдХреА рд╕реНрдерд┐рддрд┐ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рд╕рдЪ рд╣реИ, рдпрд╣ рдЕрднреА рднреА рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рддрднреА рдЬрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдирд┐рд░реНрдорд╛рддрд╛, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдПрдкреАрдЖрдИ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рд┐рдЦрддрд╛ рд╣реИ, рдкреНрд░рдмрдВрдз рд░рд╛рдЬреНрдп рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдЦреБрдж рдХреА рд▓рд╛рдЗрдмреНрд░реЗрд░реАред рдпрд╣ Redux рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрдард┐рди рд╣реИред

рд░рд┐рдПрдХреНрдЯ рд╕рд╕реНрдкреЗрдВрд╕ рдПрдкреАрдЖрдИ, рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рдХрд┐рд╕реА рд░рд╛рдЬреНрдп рдореЗрдВ рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдФрд░ рдЙрд╕рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдкрд░ рдХрд╛рдо рдореЗрдВ рдЖ рд╕рдХрддрд╛ рд╣реИред рд╣рдореЗрдВ рдЗрд╕рдХреА рд░рд┐рд▓реАрдЬрд╝ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдФрд░ рдпрд╣ рджреЗрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ Redux рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдФрд░ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЛ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред Redux рд╣рдореЗрдВ рдмрд╛рдХреА рдШрдЯрдХ рддрд░реНрдХ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджреБрд╖реНрдкреНрд░рднрд╛рд╡реЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рд╣рдореЗрдВ рдПрдХ рд╡рд┐рд╢реЗрд╖ рддрд░реАрдХреЗ рд╕реЗ I / O рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред (рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВ redux-thunk рдорд┐рдбрд┐рд▓рд╡реЗрдпрд░ рдХреЗ рд▓рд┐рдП redux-saga рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрддрд╛ рд╣реВрдВ рдкреНрд░рднрд╛рд╡ рдЕрд▓рдЧрд╛рд╡ рд╣реИ)ред рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ Redux рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ API рдХреЛ рдкреНрд░рднрд╛рд╡ рдЕрд▓рдЧрд╛рд╡ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

Redux рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рд╣реИ


Redux рдПрдХ рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ (рдФрд░ рдЕрдХреНрд╕рд░ рдмрд╣реБрдд рдХрдо) рд╣реИред рдпрд╣ рдлреНрд▓рдХреНрд╕ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд╛ рдПрдХ рд╕рдмрд╕реЗрдЯ рднреА рд╣реИ, рдЬреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдЦреНрддреА рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд░рд╛рдЬреНрдп рдкрд░рд┐рд╡рд░реНрддрди рдХреИрд╕реЗ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред Redux рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╣рд╛рдБ рдФрд░ рдкрдврд╝реЗрдВред

рдореИрдВ рдЕрдХреНрд╕рд░ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ Redux рд╢реИрд▓реА рдореЗрдВ рдирд┐рд░реНрдорд┐рдд reducers рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдЬрдм рдореБрдЭреЗ рдШрдЯрдХ рдХреА рдЬрдЯрд┐рд▓ рд╕реНрдерд┐рддрд┐ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди Redux рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ Node.js рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдХрд╛рд░реНрд░рд╡рд╛рдИ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП Redux (рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ Autodux рдФрд░ Redux -saga рдЬреИрд╕реЗ Redux рдЯреВрд▓) рдХреА рднрд╛рд╡рдирд╛ рдореЗрдВ рдмрдирд╛рдИ рдЧрдИ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВ Redux рдХреЛ рдРрд╕реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд░рддрд╛ред

Redux рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣рдореЗрд╢рд╛ рдПрдХ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдФрд░ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕реНрд╡реИрдЪреНрдЫрд┐рдХ рд╕рдордЭреМрддреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд░рд╣реА рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, Redux рдХреЗ рдореВрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдХреЛрдб рдХреА рдПрдХ рджрд░реНрдЬрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рд╕реЗ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреА рдЦрдмрд░ рд╣реЛрдЧреА, рдЬреЛ рд╣реБрдХ рдХреЗ рд╕рд╛рде рдШрдЯрдХреЛрдВ рдХреЗ рд╕реНрдерд╛рдиреАрдп рд░рд╛рдЬреНрдп рдХрд╛ рдЕрдзрд┐рдХ рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рд░реЗрдбрдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдирд╣реАрдВ рдмрд╛рдВрдзрддреЗ рд╣реИрдВред

рд░рд┐рдПрдХреНрдЯ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ useReducer рд╣реБрдХ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ useReducer рд╕реНрдЯрд╛рдЗрд▓ reducers рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рд░рд╛рдЬреНрдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдЧреИрд░-рддреБрдЪреНрдЫ рддрд░реНрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реИ, рд░рд╛рдЬреНрдп рдХреЗ рдЖрд╢реНрд░рд┐рдд рдЯреБрдХрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдпрджрд┐ рдЖрдк рдПрдХ рдРрд╕реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдШрдЯрдХ рдХреА рдЕрд╕реНрдерд╛рдпреА рд╕реНрдерд┐рддрд┐ рдЙрдкрдпреБрдХреНрдд рд╣реИ, рддреЛ рдЖрдк рдЗрд╕ рд░рд╛рдЬреНрдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Redux рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди Redux рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдмрдЬрд╛рдп, рдЖрдк рд░рд╛рдЬреНрдп рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП useReducer рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрджрд┐ рдмрд╛рдж рдореЗрдВ рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рдХрд╛ рд╕реНрдерд╛рдпреА рднрдВрдбрд╛рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рдЖрдк рдХреЗрд╡рд▓ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕ рддрд░рд╣ рдХреЗ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП 90% рддреИрдпрд╛рд░ рд╣реЛрдВрдЧреЗред рдЖрдкрдХреЛ рдмрд╕ рдЗрддрдирд╛ рдХрд░рдирд╛ рд╣реИ рдХрд┐ рдШрдЯрдХ рдХреЛ Redux рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рд╡рд╣рд╛рдВ рд╕рдВрдмрдВрдзрд┐рдд рд░рд┐рдбреНрдпреВрд╕рд░ рдХреЛ рдЬреЛрдбрд╝реЗрдВред

рдХреНрдпреВ рдПрдВрдб рдП


рдпрджрд┐ Redux рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЗрдЯрд╛ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддрд╛ рд╣реИ?


рдирд╣реАрдВ, рдпрд╣ рдЯреВрдЯрд╛ рдирд╣реАрдВ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдХреЛрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рд▓реЗрдХрд┐рди рд╕рдордЭреМрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХрд╛ Redux рд░рд╛рдЬреНрдп рдирд┐рд░реНрдзрд╛рд░рдХ рд╣реЛ, рддреЛ рд╢реБрджреНрдз рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрд╣ рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рд╕реНрдерд╛рдиреАрдп рдШрдЯрдХреЛрдВ рдХреА рдЕрд╕реНрдерд╛рдпреА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд┐рдпрд╛ рдЬрд╛рдПред

тЦН рдХреНрдпрд╛ Redux рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЗрдЯрд╛ рдХреЗ рдПрдХрд▓ рд╕реНрд░реЛрдд рдХреА рднреВрдорд┐рдХрд╛ рдирд┐рднрд╛рдиреА рдЪрд╛рд╣рд┐рдП?


рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЗрдЯрд╛ рдХреЗ рдПрдХрд▓ рд╕реНрд░реЛрдд рдХрд╛ рд╕рд┐рджреНрдзрд╛рдВрдд рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╕рднреА рдбреЗрдЯрд╛ рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛрдВред рдЗрд╕ рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдЕрд░реНрде рдпрд╣ рд╣реИ рдХрд┐ рд░рд╛рдЬреНрдп рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдЯреБрдХрдбрд╝реЗ рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЗрдЯрд╛ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рд╕реНрд░реЛрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд░рд╛рдЬреНрдп рдХреЗ рдХрдИ рдЯреБрдХрдбрд╝реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рдкрд╛рд╕ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЗрдЯрд╛ рдХрд╛ рдЕрдкрдирд╛ рд╕реНрд░реЛрдд рд╣реИред

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рддрдп рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд░реЗрдбрдХреНрд╕ рдХреЛ рдХреНрдпрд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рдШрдЯрдХреЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХреНрдпрд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рд░рд╛рдЬреНрдп-рдирд┐рд░реНрдзрд╛рд░рдг рдбреЗрдЯрд╛ рдЕрдиреНрдп рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рднреА рд▓рд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдПрдкреАрдЖрдИ рд╕реЗ рдЬреЛ рдЖрдкрдХреЛ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦреЗ рдЬрд╛ рд░рд╣реЗ рдкреГрд╖реНрда рдХреЗ рдкрддреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

Redux рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд░рд╛рдЬреНрдп рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЗрдЯрд╛ рдХреЗ рдПрдХрд▓ рд╕реНрд░реЛрдд рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╣рд╛рди рдЙрдкрдХрд░рдг рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдШрдЯрдХ рдХреА рд╕реНрдерд┐рддрд┐ рдЗрд╕ рдШрдЯрдХ рдХреЗ рднреАрддрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реНрдерд┐рдд рдФрд░ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рддреА рд╣реИ, рддреЛ, рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕ рд░рд╛рдЬреНрдп рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЗрдЯрд╛ рдХрд╛ рдПрдХ рд╕реНрд░реЛрдд рд╣реИ - рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХ рдХреА рд╕реНрдерд┐рддрд┐ред

рдпрджрд┐ рдЖрдк Redux рд░рд╛рдЬреНрдп рдореЗрдВ рдХреБрдЫ рдбреЗрдЯрд╛ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ Redux рд░рд╛рдЬреНрдп рдХреЗ рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рд╣рдореЗрд╢рд╛ рдкрдврд╝рдирд╛ рдЪрд╛рд╣рд┐рдПред Redux рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЬреЛ рдХреБрдЫ рднреА рд╣реИ, рдЙрд╕рдХреЗ рд▓рд┐рдП рдпрд╣ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдбреЗрдЯрд╛ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рд╕реНрд░реЛрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

Redux рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рдм рдХреБрдЫ рдбрд╛рд▓рдирд╛, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░реЗрдЧрд╛ рдпрджрд┐ рдЖрдк рд░рд╛рдЬреНрдп рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЕрдХреНрд╕рд░ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдпрд╛ рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдШрдЯрдХ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдирд┐рд░реНрднрд░ рд░рд╛рдЬреНрдп рдЯреБрдХрдбрд╝реЗ рдХрд╛ рднрд╛рд░реА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдкрдХреЛ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рддрдм рддрдХ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП рдЬрдм рддрдХ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдВ рди рд╣реЛрдВред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдореБрджреНрджреЗ рдкрд░ рдЪрд┐рдВрддрд┐рдд рд╣реИрдВ, рддреЛ рд░рд╛рдЬреНрдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рджреЛрдиреЛрдВ рддрд░реАрдХреЛрдВ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдЙрдирдХреЗ рдкреНрд░рднрд╛рд╡ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░реЗрдВред рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд░реВрдкрд░реЗрдЦрд╛ рддреИрдпрд╛рд░ рдХрд░рдирд╛ рдФрд░ рд░реЗрд▓ рдкреНрд░рджрд░реНрд╢рди рдореЙрдбрд▓ рдХреЛ рдпрд╛рдж рд░рдЦрдирд╛ред

тЦН рдХреНрдпрд╛ рдореБрдЭреЗ рд░рд┐рдПрдХреНрд╢рди-рд░реЗрдбрдХреНрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпрд╛ рдХреНрдпрд╛ рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ?


рдпрд╣ рдмрд╣реБрдд рдХреБрдЫ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред connect рдлрд╝рдВрдХреНрд╢рди рдмрд╛рд░-рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдПрдХ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдШрдЯрдХ рдмрдирд╛рддрд╛ рд╣реИ, рдФрд░ рд╣реБрдХ рдПрдХрд▓ рдШрдЯрдХ рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдореБрдЭреЗ рд╕рдорд╛рди рдЧреБрдгреЛрдВ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдШрдЯрдХреЛрдВ рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдпрджрд┐ рд╣рд╛рдВ, рддреЛ connect рдЙрдкрдпреЛрдЧ connect ред рдЕрдиреНрдпрдерд╛, рдореИрдВ рд╣реБрдХ рдЪреБрдирдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдШрдЯрдХ рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреЛ рдЕрдзрд┐рдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ:

 import { connect } from 'react-redux'; import RequiresPermission from './requires-permission-component'; import { userHasPermission } from '../../features/user-profile/user-profile-reducer'; import curry from 'lodash/fp/curry'; const requiresPermission = curry(  (NotPermittedComponent, { permission }, PermittedComponent) => {    const mapStateToProps = state => ({      NotPermittedComponent,      PermittedComponent,      isPermitted: userHasPermission(state, permission),    });    return connect(mapStateToProps)(RequiresPermission);  }, ); export default requiresPermission; 

рдЕрдм, рдпрджрд┐ рдХреЛрдИ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕рд╛рде рдЧрд╣рдирддрд╛ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рдЕрдиреБрдорддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдк рдПрдХ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдШрдЯрдХ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЗрди рд╕рднреА рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреЛ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдПрдВрдб-рдЯреВ-рдПрдВрдб рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ:

 import NextError from 'next/error'; import compose from 'lodash/fp/compose'; import React from 'react'; import requiresPermission from '../requires-permission'; import withFeatures from '../with-features'; import withAuth from '../with-auth'; import withEnv from '../with-env'; import withLoader from '../with-loader'; import withLayout from '../with-layout'; export default compose(  withEnv,  withAuth,  withLoader,  withLayout(),  withFeatures,  requiresPermission(() => <NextError statusCode={404} />, {    permission: 'admin',  }), ); 

рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ:

 import compose from 'lodash/fp/compose'; import adminPage from '../HOCs/admin-page'; import AdminIndex from '../features/admin-index/admin-index-component.js'; export default adminPage(AdminIndex); 

рдЙрдЪреНрдЪ-рдХрд╛рд░реНрдп рдШрдЯрдХ API рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЕрдзрд┐рдХ рд░рд╕реАрд▓рд╛ рд░реВрдк рд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди connect рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ mapStateToProps рд▓реЗрддрд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ mapStateToProps ред рд╣рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рднреВрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рд▓рд┐рдЯрд░рд▓ рд▓реЗ рд╕рдХрддрд╛ рд╣реИред рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ connect рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдХрд┐ рдпрд╣ рдПрдХ рдХрд░реА рдлрд╝рдВрдХреНрд╢рди рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рдХрд░реА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИред

рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдореИрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ connect рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдХреЛрдб рдХреА рд╕рдВрдХреНрд╖рд┐рдкреНрддрддрд╛ рдХреА рджрд┐рд╢рд╛ рдореЗрдВ рдмрд╣реБрдд рдХрд╛рдо рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдкрд░рд┐рдгрд╛рдореА рдХреЛрдб рди рддреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкрдардиреАрдп рд╣реИ, рди рд╣реА рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдЕрдЧрд░ рдореБрдЭреЗ рдХрдИ рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдореИрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реБрдХ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ connect рдПрдкреАрдЖрдИ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдЗрд╕рд╕реЗ рдХреЛрдб рдХреА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рд╣реЛрдЧреАред

Leton рдпрджрд┐ рдПрдХ рд╕рд┐рдВрдЧрд▓рдЯрди рдХреЛ рдПрдХ рд╡рд┐рд░реЛрдзреА рдкреИрдЯрд░реНрди рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ Redux рдПрдХ рд╕рд┐рдВрдЧрд▓рдЯрди рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ Redux рдПрдХ рдПрдВрдЯреА-рдкреИрдЯрд░реНрди рд╣реИ?


рдирд╣реАрдВ, рдпрд╣ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдХреЛрдб рдХреА рд╕рдВрджрд┐рдЧреНрдз рдЧреБрдгрд╡рддреНрддрд╛ рдореЗрдВ рдХреЛрдб рд╕рдВрдХреЗрдд рдореЗрдВ рдПрдХ рд╕рд┐рдВрдЧрд▓рдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдЗрд╕рдореЗрдВ рдПрдХ рд╕рд╛рдЭрд╛ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдЕрд╡рд╕реНрдерд╛ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рд░реЛрдзреА рдкреИрдЯрд░реНрди рд╣реИред рджреВрд╕рд░реА рдУрд░, Redux, рдПрдиреНрдХреИрдкреНрд╕реБрд▓реЗрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд╛рдЭрд╛ рдЕрд╡рд╕реНрдерд╛ рдХреЗ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рд░реЛрдХрддрд╛ рд╣реИ (рдЖрдкрдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕реАрдзреЗ reducers рдХреЗ рдмрд╛рд╣рд░ рдирд╣реАрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП; Redux рд░рд╛рдЬреНрдп рдмрджрд▓рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ) рдФрд░ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рд╕реЗ (рдХреЗрд╡рд▓ рднреЗрдЬреЗ рдЧрдП рдСрдмреНрдЬреЗрдХреНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рд░рд╛рдЬреНрдп рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддреЗ рд╣реИрдВ)ред

рдкрд░рд┐рдгрд╛рдо


рдХреНрдпрд╛ Redux рд░рд┐рдПрдХреНрдЯ рд╣реБрдХ рдХреА рдЬрдЧрд╣ рд▓реЗрддрд╛ рд╣реИ? рд╣реБрдХ рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ Redux рдХреА рдЬрдЧрд╣ рдирд╣реАрдВ рд▓реЗрддреЗ рд╣реИрдВред

рд╣рдореЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд╕рд╛рдордЧреНрд░реА рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдореЙрдбрд▓ рдЪреБрдирдиреЗ рдореЗрдВ рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХрд░реЗрдЧреАред

рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! рдХреНрдпрд╛ рдЖрдкрдиреЗ рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд┐рдпрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рд░рд┐рдПрдХреНрдЯ рд╣реБрдХ Redux рдХреА рдЬрдЧрд╣ рд▓реЗ рд╕рдХрддрд╛ рд╣реИ?

Source: https://habr.com/ru/post/hi464293/


All Articles