рд╣рд╛рд▓ рд╣реА рдореЗрдВ, Qwintry рдЯреАрдо рдиреЗ рд╣рдорд╛рд░реА рд╕рднреА рдкреБрд░рд╛рдиреА рдФрд░ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ Vue.js рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдХреНрд░рд┐рдп рдкреНрд░рд╡рд╛рд╕ рд╢реБрд░реВ рдХрд┐рдпрд╛:- рдПрдХ рд╡рд┐рд░рд╛рд╕рдд Drupal- рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдгрд╛рд▓реА (qwintry.com) рдкрд░
- рд╣рдорд╛рд░реЗ рдирдП рдореЗрдВ, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рд┐рдЦрд┐рдд qwintry.com рдереНрд░реЗрдб (Yii2 / Node.js рдкрд░ рдмреИрдХрдПрдВрдб)
- рд╣рдорд╛рд░реЗ B2B рд╕рд┐рд╕реНрдЯрдо (Yii2 рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд) (рд░рд╕рдж.qwintry.com) рдореЗрдВ
- рд╣рдорд╛рд░реА рд╕рднреА рдЫреЛрдЯреА рдЖрдВрддрд░рд┐рдХ рдФрд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ (рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдмреИрдХрдПрдВрдб рдкрд░ PHP рдФрд░ Node.js рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП)
рдХреНрдпреЛрдВ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ Vue.js рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛, Qwintry LLC рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдкреНрд░рдореБрдЦ рдХрд╣рддреЗ рд╣реИрдВ ред рдПрдВрдЯреЛрди рд╕рд┐рджрд╛рд╢рд┐рди тЮФрд╣рдорд╛рд░реЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ: рдХреНрд╡рд┐рдВрдЯрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рджреБрдирд┐рдпрд╛ рднрд░ рдореЗрдВ рдЖрдзреЗ рдорд┐рд▓рд┐рдпрди рдЧреНрд░рд╛рд╣рдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреНрд▓рд╛рдЙрдб рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЛ рдЧреЛрджрд╛рдо (рд╕рдВрдпреБрдХреНрдд рд░рд╛рдЬреНрдп рдЕрдореЗрд░рд┐рдХрд╛ рдФрд░ рдЬрд░реНрдордиреА рдореЗрдВ) рд╣реИрдВ, рдФрд░ рд╣рдо рдЖрдЧрдВрддреБрдХреЛрдВ рдФрд░ рдкреНрд░рд╕реНрдерд╛рди рдХреЗ рдпрд╛рддрд╛рдпрд╛рдд рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдВрдпреБрдХреНрдд рд░рд╛рдЬреНрдп рдЕрдореЗрд░рд┐рдХрд╛ рдХреЗ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рдореЗрд▓ рдлрд╛рд░рд╡рд░реНрдбрд░ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИрдВред рд╣рдо рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрдореЗрд░рд┐рдХрд╛ рдХреЗ рдСрдирд▓рд╛рдЗрди рд╕реНрдЯреЛрд░ рдореЗрдВ рд╕рд╛рдорд╛рди рдЦрд░реАрджрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рдкрд╛рд░реНрд╕рд▓ рдХреЛ рд╣рдорд╛рд░реЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЦрд╛рддреЗ рдореЗрдВ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рд╣рдо рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рд╢рд┐рдкрд┐рдВрдЧ рдкрд░ рдХрд╛рдлреА рдмрдЪрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЖрдИрдЯреА рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдЪреНрдЫреА рдХреАрдордд рдкрд░ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рд╡рд┐рддрд░рдг рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢реНрд░реГрдВрдЦрд▓рд╛рдУрдВ рдХреА рдЖрдкреВрд░реНрддрд┐ рдХрд░рддреЗ рд╣реИрдВред рдЧреНрд░рд╛рд╣рдХ рдХреА рд╕рдореАрдХреНрд╖рд╛
рд╕реЗ - рдЧреНрд░рд╛рд╣рдХ рдХреЗ рджреНрд╡рд╛рд░ рдкрд░ рд╣рдорд╛рд░рд╛ рдкреИрдХреЗрдЬрдХреНрд╡рд┐рдВрдЯреНрд░реА рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдХреЛрдб рдЖрдзрд╛рд░ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ PHP рдФрд░ JS (рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд┐рдлреНрдЯ рдФрд░ рдЬрд╛рд╡рд╛) рд╢рд╛рдорд┐рд▓ рд╣реИрдВредрд╣рдорд╛рд░реЗ - рд╣рдо Vue.js рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рдореЗрдВ рдЬрд╛рдВрдЪ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╕реА рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдХреИрд▓рдХреБрд▓реЗрдЯрд░ - рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Vue.js рдФрд░ Angular2ред React.js
рд░рд┐рдПрдХреНрдЯ рдХреА рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓ рдпрд╛ рджреЛ рдореЗрдВ рдЖрд╕рдорд╛рди рдЫреВ рдЧрдИ рд╣реИ рдФрд░ рдЕрдм, рд╢рд╛рдпрдж, рдпрд╣ рдЬреЗрдПрд╕ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬреЛ рдХреЛрдб рдХреЗ рддреАрди-рд▓рд╛рдЗрди рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдлреНрд░рдВрдЯрдПрдВрдб рдкрд░ рдХреБрдЫ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИредрд╣рдордиреЗ рд░рд┐рдПрдХреНрдЯ рдкрд░ рдХрдИ рдПрд╕рдкреАрдП рдФрд░ рдбрд╛рдпрдиреЗрдорд┐рдХ рд╡рд┐рдЬреЗрдЯ рджреЗрдЦреЗ, рд╣рдордиреЗ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ (рдЖрдИрдУрдПрд╕ рдХреЗ рд▓рд┐рдП) рдФрд░ рд░реЗрдбрдХреНрд╕ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░рд╛рдЬреНрдп рдХреА рдЬрд╛рдЧрд░реВрдХрддрд╛ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЬреЗрдПрд╕ рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд░рд┐рдПрдХреНрдЯ рдПрдХ рдмрдбрд╝рд╛ рдХрджрдо рдерд╛ , рдФрд░ рдЗрд╕рдиреЗ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЛ рджрд┐рдЦрд╛рдпрд╛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдПрдХ рдЕрдЪреНрдЫрд╛, рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рддрд░реАрдХрд╛ рд╣реИред рдореБрдЭреЗ рдпрд╣ рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдорд╣рд╛рди рд╣реИ - рдпрд╣ рд╕рдЪрдореБрдЪ рдореЛрдмрд╛рдЗрд▓ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдкреВрд░реЗ рдкрд░рд┐рджреГрд╢реНрдп рдХреЛ рдмрджрд▓ рджреЗрддрд╛ рд╣реИредрдореЗрд░реЗ рд▓рд┐рдП рдиреБрдХрд╕рд╛рди рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛:
рдЕрдХреНрд╕рд░, рд╕реНрд╡рдЪреНрдЫрддрд╛, рдкреНрд░рддрд┐рд░рдХреНрд╖рд╛ рдФрд░ рд╡рд┐рдЪрд╛рд░рдзрд╛рд░рд╛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд░ рд╣рд╛рд╡реА рд╣реЛрддреА рд╣реИред
рдореБрдЭреЗ рдЧрд▓рдд рдордд рд╕рдордЭреЛред рдореИрдВ рдкреНрд░рд╕реНрддреБрддрд┐рдХрд░рдг рдХреА рдкрд╡рд┐рддреНрд░рддрд╛ рдФрд░ рд╕рд░рд▓рддрд╛ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ () рджреГрд╖реНрдЯрд┐рдХреЛрдг - рдЗрд╕рдореЗрдВ рдХреЛрдИ рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдорд╣рд╛рди рд╡рд┐рдЪрд╛рд░ рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВредрдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рдЖрдк рдЕрдкрдиреА рдХрдВрдкрдиреА рдореЗрдВ 1,000 рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдХрдареЛрд░ рдФрд░ рд╕рдлрд╛рдИ рдХрд╛ рдпрд╣ рд╕реНрддрд░ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ - рдЙрд╕реА рд╕рдордп рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЬрдм рдЖрдк рдЕрдкрдиреЗ рд╕рднреА PHP рдХреЛрдб рдХреЛ рд╕реНрдерд┐рд░ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ ред рдпрд╛ рдЬрдм рдЖрдк рдПрдХ рд╣рд╛рд╕реНрдХреЗрд▓ рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЬреЗрдПрд╕ рдХреЛ рд╕рдордЭрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рдХрдо рдбреЗрд╡рд▓рдкрд░реНрд╕, рдЫреЛрдЯреЗ рдмрдЬрдЯ рдФрд░ рд▓рдХреНрд╖реНрдп рд╣реИрдВ рдЬреЛ рдлреЗрд╕рдмреБрдХ рдХреЗ рд▓рдХреНрд╖реНрдпреЛрдВ рд╕реЗ рднрд┐рдиреНрди рд╣реИрдВред рдореИрдВ рдЗрд╕ рдкрд░ рдереЛрдбрд╝рд╛ рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░реВрдВрдЧрд╛редJSX рдмреЗрдХрд╛рд░ рд╣реИ
рдПрдХ рд╕реЗрдХрдВрдб рд░реБрдХреЛ! рдореБрдЭреЗ рдкрддрд╛ рд╣реИ! рдпрд╣ "рд╡рд┐рд╢реЗрд╖ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреЗ рд╕рд╛рде рд╕рд┐рд░реНрдл рд╢реБрджреНрдз рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ"ред рд╣рдорд╛рд░реЗ рд▓реЛрдЧ рдЬреЛ рдПрдХ рд╕реНрдХреЗрдЪ рдФрд░ рдлрд╝реЛрдЯреЛрд╢реЙрдк рдореЗрдВ рдПрдХ рдбрд┐рдЬрд╝рд╛рдЗрди рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдЙрд╕реЗ HTML рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдХрдард┐рди рд╕рдордп рд╕реАрдорд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдЬреЛ рдЕрдм рдЗрд╕реЗ рдХрдИ рдбрд┐рд╡реАрдЬрдиреЛрдВ рдореЗрдВ рд▓рдкреЗрдЯрдХрд░ рдЗрд╕ рдлрд╝реЙрд░реНрдо рдХреЛ рдмрдирд╛рддреЗ рд╣реИрдВ - рдЕрднреА - рдбреНрд░рдо рд╕рд╛рдл рдФрд░ "рд╕рд░рд▓" рд╣реИ ES6ред рдХреБрдЫ рдбрд┐рдЬрд╝рд╛рдЗрдиреЛрдВ рдХреЛ рд░рд┐рдПрдХреНрдЯ рдШрдЯрдХреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдПрдХ рдлрд╡реНрд╡рд╛рд░рд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ JSX рдореЗрдВ рдкрдардиреАрдпрддрд╛ рдХрд╛ рдЕрднрд╛рд╡ рд╣реИред HTML рдХреЛрдб рдХреЗ рдХреБрдЫ рдмреНрд▓реЙрдХ рдореЗрдВ рдЕрдЪреНрдЫреЗ рдкреБрд░рд╛рдиреЗ IF рдХреЛ рдбрд╛рд▓рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрдерддрд╛ рдЦрд░рд╛рдм рд╣реИ, рдФрд░ рдХреГрдкрдпрд╛ рд░рд┐рдПрдХреНрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢рдВрд╕рдХреЛрдВ рдкрд░ рд╡рд┐рд╢реНрд╡рд╛рд╕ рди рдХрд░реЗрдВ, рдЬреЛ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ "рдпрджрд┐ () рдЕрдВрддрд┐рдо рд╢рддрд╛рдмреНрджреА рд╣реИ, рдФрд░ рдЕрдм рд╕рднреА рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЯрд░реНрдирд░реА рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ"ред рдореБрдЭреЗ рдЖрдкрдХреЛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ: рдЬреЗрдПрд╕рдПрдХреНрд╕ рдЕрднреА рднреА HTML рдФрд░ рдЬреЗрдПрд╕ рдХреА рдПрдХ рдЧрдбрд╝рдмрдбрд╝реА рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдкрдврд╝рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ рд╢реБрджреНрдз рдЬреЗрдПрд╕ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред<ul>
{items.map(item =>
<li key={item.id}>{item.name}</li>
)}
</ul>
рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЛрдЪрддреЗ рд╣реИрдВ (рдФрд░ рдореИрдВ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЙрдирд╕реЗ рд╕рд╣рдордд рд╣реВрдВ) рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рддрд┐рдмрдВрдз рдЙрдиреНрд╣реЗрдВ рдордЬрдмреВрдд рдмрдирд╛рдПрдВрдЧреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЕрдзрд┐рдХ рдореЙрдбреНрдпреВрд▓рд░ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ JSX (рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░) рд╕реАрдорд╛рдПрдВ рдЖрдкрдХреЛ рдЫреЛрдЯреЗ рд╕рд╣рд╛рдпрдХ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рдбрд╛рд▓рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЕрдВрджрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддреА рд╣реИрдВред рд░реЗрдВрдбрд░ () рдлрд╝рдВрдХреНрд╢рдВрд╕, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдФрд░ рдХрдИ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рд╣реИ:stackoverflow.com/a/38231866/1132016JSX рдЖрдкрдХреЛ рдШрдЯрдХреЛрдВ рдХреЛ 15-рд▓рд╛рдЗрдиреЛрдВ-рдПрдЪрдЯреАрдПрдордПрд▓ рдХреЛ 3 рдШрдЯрдХреЛрдВ рдореЗрдВ рддреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИ, 5-рд▓рд╛рдЗрдиреЗрдВ-рдПрдЪрдЯреАрдПрдордПрд▓-рдЗрди-рдкреНрд░рддреНрдпреЗрдХред рдРрд╕рд╛ рдордд рд╕реЛрдЪреЛ рдХрд┐ рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЖрдкрдХреЛ рдПрдХ рдмреЗрд╣рддрд░ рдбреЗрд╡рд▓рдкрд░ рдмрдирд╛рддрд╛ рд╣реИредрдпреЗ рд░рд╣реА рдмрд╛рдд:рдЬрдм рдЖрдк рдПрдХ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЬрдЯрд┐рд▓ рдШрдЯрдХ рд▓рд┐рдЦрддреЗ рд╣реИрдВ - рдЬрд┐рд╕реЗ рдЖрдк рд╢рд╛рдпрдж рд╣реИрдХрдЯрд░рдиреНрдпреВрдЬрд╝ рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд┐рдЯрд╣рдм рдкрд░ рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреНрд░рддрд┐рдирд┐рдзрд┐ рдкрд░ рдХрд▓ рдкреЛрд╕реНрдЯ рдирд╣реАрдВ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ - рдЬреЗрдПрд╕рдПрдХреНрд╕ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЗ рдХрд╛рд░рдг рдШрдЯрдХреЛрдВ рдХреЛ рд╕реБрдкрд░ рдЧреВрдВрдЧрд╛ рдШрдЯрдХреЛрдВ рдореЗрдВ рддреЛрдбрд╝рдиреЗ рдХрд╛ рдпрд╣ рддрд░реАрдХрд╛ рд╣рдореЗрд╢рд╛ рдЖрдкрдХреЛ рдзрд╛рд░рд╛ рд╕реЗ рдмрд╛рд╣рд░ рдЦреАрдВрдЪрддрд╛ рд╣реИ, рдЬреЛ рдЖрдк рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╛рдкрд╛рд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╣реИрдВред рдирд╣реАрдВ, рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЖрдВрд╢рд┐рдХ рдШрдЯрдХреЛрдВ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдмреБрд░рд╛ рд╣реИ рдпрд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЖрдкрдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдЗрд╕рдХреЗ рдШрдЯрдХреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдпрд╣ рдХреЗрд╡рд▓ рддрднреА рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрдм рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдХреЛрдб рдореЗрдВ рдпрд╣ рд╡рд┐рд╢реЗрд╖ рддрд╛рд░реНрдХрд┐рдХ рдЗрдХрд╛рдИ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд░рдВрдЧрдордВрдЪ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рдШрдЯрдХ рдмрдирдирд╛ рдмреЗрд╣рддрд░ рд╣реИ - рдФрд░ рдирд╣реАрдВрд╣рд░ рджреЛ рдпрд╛ рддреАрди рд╢рд░реНрддреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЯрд░реНрдирд░реА рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд┐рдЦреА рдЧрдИ рдереАрдВ! рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк рдпрд╣рд╛рдВ рдФрд░ рд╡рд╣рд╛рдВ рдПрдХ рдирдпрд╛ рдШрдЯрдХ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рд╣реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдпрд╛рд╕ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИред, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддреБрдХрд╛рд░ рдХреА рд╕реЛрдЪ рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЬрдм рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдШрдЯрдХ рдореЙрдбрд▓ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЛ рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЛ рдкреНрд░рдмрдВрдзрдХ рдХреА рд╕реЛрдЪ рдХреЗ рд▓рд┐рдП рдмрд╕ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП HTML рдХреЛ рдпрд╣рд╛рдВ рдФрд░ рд╡рд╣рд╛рдВ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛): рдЖрдкрдХреЛ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдлрд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕ рдирдП рдШрдЯрдХ рдХреЗ рд╕рд╣рд╛рд░рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рд╡реЗ рд░рд╛рдЬреНрдп рдХрд╛ рдирдХреНрд╢рд╛ рдХреИрд╕реЗ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЖрдк рдХреЙрд▓рдмреИрдХ рдХреЛ рдХреИрд╕реЗ рдЖрдЧреЗ рдмрдврд╝рд╛рддреЗ рд╣реИрдВ, рдЖрджрд┐ред рдирддреАрдЬрддрди, рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЧрддрд┐ рдХрдо рд╣реЛ рдЬрд╛рддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ рдЙрди рдШрдЯрдХреЛрдВ рдХреЗ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдкрд░ рдЦрд░реНрдЪ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рд╢рд╛рдпрдж рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рдЕрдЧрд░ JSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓рд╛ рдерд╛ред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╕рдордпрдкреВрд░реНрд╡ рдЕрдиреБрдХреВрд▓рди рд╕рдордпрдкреВрд░реНрд╡ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╕рдорд╛рди рд╣реИред рдореЗрд░реЗ рдФрд░ рд╣рдорд╛рд░реА рдЯреАрдо рдХреЗ рд▓рд┐рдП, рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рд▓реЗрдХрд┐рди рд▓реЗрдЦрди рдХреЛрдб рдХрд╛ рдЖрдирдВрдж рд▓реЗрдирд╛ рдЕрднреА рднреА рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдпрд╣ рд╢рд╛рдВрдд рдирд╣реАрдВ рд╣реИрдЬрдм рдХреИрд▓рдХреБрд▓реЗрдЯрд░ рдХреЗ рдПрдХ рд╕рд░рд▓ рд░реВрдк рдореЗрдВ 6 рдШрдЯрдХреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рдередрдЕрдХреНрд╕рд░ рдРрд╕реА рд╣рд╛рдЗрдкрд░рдореЙрдбреНрдпреВрд▓рд░рд┐рдЯреА рдирдП рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд░рдЦрд░рдЦрд╛рд╡, рд╕рдВрд╢реЛрдзрди рдпрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рднреА рдЦрд░рд╛рдм рд╣реЛрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡рд┐рдЬреЗрдЯ рдореЗрдВ HTML рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХрдИ рдлрд╛рдЗрд▓реЛрдВ / рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рдХреВрджрдиреЗ рдФрд░ HTML рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдЫреЛрдЯреЗ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдЕрд▓рдЧ рд╕реЗ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИредрдлрд┐рд░, рдореИрдВ рдореЛрдиреЛрд▓рд┐рде рд▓рд┐рдЦрдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдирд╣реАрдВ рдХрд░рддрд╛ред рдореИрдВ рджреИрдирд┐рдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдорд╛рдЗрдХреНрд░реЛ рдХрдВрдкреНрдпреВрдЯрд░ рдХреЗ рдмрдЬрд╛рдп рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВред рдпрд╣ рд╕рдВрддреБрд▓рди рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рдЬреНрдЮрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИредрд░реВрдкреЛрдВ рдФрд░ Redux рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЖрдкрдХреЛ рдкреВрд░реЗ рджрд┐рди рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдЧрд╛
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ - рдпрд╣ рд╕реНрд╡рдЪреНрдЫрддрд╛ рдФрд░ рдПрдХ рддрд░рдлрд╝рд╛ рдкреНрд░рд╡рд╛рд╣ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ, рдпрд╛рдж рд╣реИ? рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ LinkedStateMixin рдПрдХ рд╡реНрдпрдХреНрддрд┐ рдЧреИрд░ рдЧреНрд░рд╛рдо рдмрди рдЧрдпрд╛ред, рдФрд░ рдЕрдм рдЖрдкрдХреЛ 10 рдлреЙрд░реНрдо рдлрд╝реАрд▓реНрдб рд╕реЗ рдЗрдирдкреБрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 10 рдлрд╝рдВрдХреНрд╢рди рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдирд╣реАрдВ, рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ e.target рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдВрдд рдореЗрдВ рд╢рд░реНрддреЛрдВ рдХрд╛ рдПрдХ рдРрд╕рд╛ рдкреЗрдбрд╝ рд╣реЛрдЧрд╛, рдЬреЛ рдЙрд╕ рдкреНрд░рдкрддреНрд░ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдХреЗ рд╕рд╛рде рд╣реЛрдЧрд╛ рдЬрд┐рд╕реЗ рдЖрдк рд░реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ; рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ 80% рдореЗрдВ рдЗрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд▓рд╛рдЗрди рд╣реЛрдЧреА редрд╕реЗрдЯрд╕реНрдЯреИрдЯ () рдпрд╛ Redux рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрд▓ред (рддрдм рдЖрдкрдХреЛ рд╕рдВрднрд╡рддрдГ 10 рдФрд░ рд╕реНрдерд┐рд░рд╛рдВрдХ рдмрдирд╛рдиреЗ рд╣реЛрдВрдЧреЗ - рдкреНрд░рддреНрдпреЗрдХ рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП)ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдХрд░ рдпрд╣ рд╕рдм рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ... рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреЛрдИ рдЖрдИрдбреАрдИ рд╕рдВрдкрд╛рджрдХ рдирд╣реАрдВ рдкрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ рдХреЗ рд▓реЗрдЦрди рдХреЛ рд╕рд░рд▓ рдмрдирд╛ рд╕рдХреЗред рдЖрдкрдХреЛ рдЗрддрдирд╛ рдХреНрдпреЛрдВ рдЫрд╛рдкрдирд╛ рдЪрд╛рд╣рд┐рдП? рдХреНрдпреЛрдВрдХрд┐ рдмрдбрд╝реЗ рд▓реЛрдЧреЛрдВ рдиреЗ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХрд┐ рдмрдбрд╝реЗ рдЙрджреНрдпрдо рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рджреЛ-рддрд░рдлрд╛ рдмрд╛рдзреНрдпрдХрд╛рд░реА рдЦрддрд░рдирд╛рдХ рд╣реИредрдореИрдВ рдЗрд╕ рдмрд╛рдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рджреЛ-рддрд░рдлрд╝рд╛ рдмрдВрдзрди рдХрднреА-рдХрднреА рдЗрддрдирд╛ рд╕рд░рд▓ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЗрддрдирд╛ рдкрдардиреАрдп рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрди рдЖрд╢рдВрдХрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрдВрдЧреБрд▓рд░ рдХреЗ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреА рд╕рд╛рдорд╛рдиреНрдп рдкреАрдбрд╝рд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ, рдЬрд╣рд╛рдБ рджреЛ-рддрд░рдлрд╝рд╛ рдмрдВрдзрди рд╕рд░реНрд╡реЛрддреНрддрдо рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдлрд┐рд░ рднреА ... рдпрд╣ рд╢рд╛рдпрдж рдХреЛрдгреАрдп рдореЗрдВ рднреА рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдЧрд▓рдд рдирд╣реАрдВ рдерд╛ред рдореЗрд░реЗ рддреНрд╡рд░рд┐рдд рд╕рдВрдкрд╛рджрдХ рдХреЛ рджреЗрдЦреЗрдВ, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╣рдорд╛рд░реЗ рдбреНрд░реБрдкрд▓ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд▓рд┐рдП Vue.js рд╕реЗ рддрдВрдЧ рдХрд┐рдпрд╛ рдерд╛ (рдореИрдВ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд▓рд┐рдП рдЕрдЧреНрд░рд┐рдо рд░реВрдк рд╕реЗ рдорд╛рдлреА рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдпрд╣ рд╣рдорд╛рд░реЗ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдпреВрдЖрдИ рдмреИрдХрдПрдВрдб рд╣реИ, рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░ рд╣рдорд╛рд░реЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдлреЗрд╕ рдмрдирд╛рдиреЗ рдореЗрдВ рд╡реНрдпрд╕реНрдд рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдпрд╣ рдЯреБрдХрдбрд╝рд╛ рдЗрд╕рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред рд╕реБрдВрджрд░ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдШрдВрдЯреЗ):рд╢рд╛рдпрдж рдПрдВрдЧреБрд▓рд░ рдореЗрдВ рднреА рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдорд┐рд╕рдХреЙрд▓ рдирд╣реАрдВ рдерд╛ред рдореЗрд░реЗ рддреНрд╡рд░рд┐рдд рд╕рдВрдкрд╛рджрдХ рдХреЛ рджреЗрдЦреЗрдВ, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЕрдкрдиреЗ рдбреНрд░реБрдкрд▓ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд▓рд┐рдП Vue.js рд╕реЗ рддрдВрдЧ рдХрд┐рдпрд╛ рдерд╛ (рдореИрдВ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд▓рд┐рдП рдЕрдЧреНрд░рд┐рдо рд░реВрдк рд╕реЗ рдорд╛рдлреА рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдпрд╣ рд╣рдорд╛рд░реЗ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдпреВрдЖрдИ рдмреИрдХрдПрдВрдб рд╣реИ, рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░ рд╣рдорд╛рд░реЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдлреЗрд╕ рдмрдирд╛рдиреЗ рдореЗрдВ рд╡реНрдпрд╕реНрдд рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдпрд╣ рдЯреБрдХрдбрд╝рд╛ рдЗрд╕рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред рд╕реБрдВрджрд░ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдШрдВрдЯреЗ):рд╢рд╛рдпрдж рдПрдВрдЧреБрд▓рд░ рдореЗрдВ рднреА рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдорд┐рд╕рдХреЙрд▓ рдирд╣реАрдВ рдерд╛ред рдореЗрд░реЗ рддреНрд╡рд░рд┐рдд рд╕рдВрдкрд╛рджрдХ рдХреЛ рджреЗрдЦреЗрдВ, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЕрдкрдиреЗ рдбреНрд░реБрдкрд▓ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд▓рд┐рдП Vue.js рд╕реЗ рддрдВрдЧ рдХрд┐рдпрд╛ рдерд╛ (рдореИрдВ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд▓рд┐рдП рдЕрдЧреНрд░рд┐рдо рд░реВрдк рд╕реЗ рдорд╛рдлреА рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдпрд╣ рд╣рдорд╛рд░реЗ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдпреВрдЖрдИ рдмреИрдХрдПрдВрдб рд╣реИ, рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░ рд╣рдорд╛рд░реЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдлреЗрд╕ рдмрдирд╛рдиреЗ рдореЗрдВ рд╡реНрдпрд╕реНрдд рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдпрд╣ рдЯреБрдХрдбрд╝рд╛ рдЗрд╕рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред рд╕реБрдВрджрд░ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдШрдВрдЯреЗ):
рдореИрдВ рд╕реНрдкрд╖реНрдЯ рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдирд╣реАрдВ рджрд┐рдЦрд╛ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди рдЗрд╕реЗ Vue рдореЗрдВ рд▓рд┐рдЦрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдерд╛, рдФрд░ рдХреЛрдб рдмрд╣реБрдд рдкрдардиреАрдп рдерд╛ред рдФрд░ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореИрдВ рдлреЙрд░реНрдо рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдлрд╝рдВрдХреНрд╢рди рд▓рд┐рдЦрддрд╛ рд╣реВрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЦреБрд╢реА рд╕реЗ рдирд╣реАрдВ рдХреВрджреВрдВрдЧрд╛редRedux рднреА рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рд▓реЗрдЦрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ ред рдФрд░ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░, рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдмрдпрд╛рди рдЦреЛрдЬрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдЬреЛ Mobx рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ Angular рдореЗрдВ рдмрджрд▓рдиреЗ рдХрд╛ рдЖрд░реЛрдк рд▓рдЧрд╛рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ Mobx рджреЛ рддрд░рдлрд╝рд╛ рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ("рд╕реНрд╡рдЪреНрдЫрддрд╛" рдкрд░ рдЦрдВрдб # 1 рджреЗрдЦреЗрдВ)ред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрдИ рд╕реНрдорд╛рд░реНрдЯ рд▓реЛрдЧ рдЕрдкрдиреЗ рдХреЛрдб рдХреЗ "рд╕реНрд╡рдЪреНрдЫрддрд╛" рдХреЛ рдЬрд▓реНрджреА рдФрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╣рд▓ рдХрд┐рдП рдЧрдП рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдХрд╛рд░реНрдп (рдЬреЛ, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рдордп рд╕реАрдорд╛ рдирд╣реАрдВ рд╣реИ рддреЛ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ) рд╕реЗ рдЕрдзрд┐рдХ рдореВрд▓реНрдп рд╣реИредрдЙрд╕реА рд╕рдордп, рдореИрдВ рдлреНрд▓рдХреНрд╕ / рд░реЗрдбрдХреНрд╕ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЛ рдЦреБрдж рдХреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдорд╛рдирддрд╛ рд╣реВрдВред Redux рд╕рд░рд▓ рд╣реИ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдПрдХ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕реНрддрд░ рдХрд╛ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд░рд╛рдЬреНрдп рдХреЛ рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЯреБрдХрдбрд╝реЛрдВ рд╕реЗ рдЕрд▓рдЧ рдХрд░рддрд╛ рд╣реИ - рдпрд╣ рддреБрд░рдВрдд рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦрдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ рд╕рдм рдмрд╣реБрдд рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╕реНрдХреНрд░рд┐рдмрд▓ рджреНрд╡рд╛рд░рд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рдВ, рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЯрд╛рдЗрдо-рдЯреНрд░реИрд╡рд▓ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХрдорд╛рд▓ рдХреА рд╣реИред рд▓реЗрдХрд┐рди рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВ рдЗрд╕реЗ рд╣рд╛рдИ-рд╕реНрдкреАрдб рдХреЛрдб рд▓реЗрдЦрди рдХреЗ рд▓рд┐рдП рдмрд▓рд┐рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВ, рдФрд░ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХреЛ рд╕рдордп-рдпрд╛рддреНрд░рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрджрд┐ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдлреЙрд░реНрдо рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдирд┐рд░рдВрддрд░ рдЖрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИредрд╕рд╛рдзрдиреЛрдВ рдореЗрдВ рдЕрддреНрдпрдзрд┐рдХрддрд╛
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдмрд╛рдмреЗрд▓ рдкрд░ рдореВрд▓ рдЧреБрдВрдЬрд╛рдЗрд╢ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИред рдЖрдк рдИрдПрд╕ 5 рд╕рдВрдХрд▓рдХ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдПрдирдкреАрдПрдо рд╕рдВрдХреБрд▓ рдХреЗ рдПрдХ рд╕рднреНрдп рдЧреБрдЪреНрдЫрд╛ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЖрд╡реЗрджрди рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рд▓реЛрдб рдореЗрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╢реБрд░реБрдЖрддреА рдмрд┐рд▓реНрдб рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдиреЛрдб_рдореЙрдбрд▓ рдореЗрдВ рд▓рдЧрднрдЧ 75 рдПрдордмреА рдЬреЗрдПрд╕ рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдирд╣реАрдВ рд╣реИ рдФрд░ рдЬреЗрдПрд╕ рджреБрдирд┐рдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдирд┐рд░рд╛рд╢рд╛ рдФрд░ рдЭреБрдВрдЭрд▓рд╛рд╣рдЯ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИредрдореЗрд░рд╛ рд░рд┐рдПрдХреНрдЯ рдХрд╛ рдлреИрд╕рд▓рд╛ - рдЖрдкрдХреЛ рдорд╣рд╛рди, рдкрдардиреАрдп рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдмрд╣реБрдд рд▓рд┐рдЦрдирд╛ рдордЬреЗрджрд╛рд░ рдирд╣реАрдВ рд╣реИред рдЦреИрд░, рд▓реЗрдЖрдЙрдЯ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛рдПрдВ рдЬреЛ рд╕реНрд╡рдпрдВ рдирд╣реАрдВ рд╣реИрдВ, рдФрд░ HTML рдХреЗ рдЕрдВрджрд░ ES6 рдХрд╛ рдорд╛рд▓рд┐рдХ рдирд╣реАрдВ рдмрдирдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ - рдЧрд╛рдпрдм рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВредрдХреЛрдгреАрдп 1: рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рдмрд╣реБрдд рдмреБрд░реА рд╣реИ
рдХреЛрдгреАрдп 1 рдЕрдкрдиреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рдврд╛рдВрдЪрд╛ рд╣реИ, рдЬреЛ рд╕реНрд╡рдЪреНрдЫрддрд╛ рдХреА рдХрд╛рд▓реНрдкрдирд┐рдХ рдЬреЗрдПрд╕ рдорд╛рдирдЪрд┐рддреНрд░ рдХреЗ рд╡рд┐рдкрд░реАрдд рдХреЛрдиреЗ (рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ) рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ рдФрд░ рдХреЛрдб рдХреА рдкрдардиреАрдпрддрд╛ рд╣реИред рдХреЛрдгреАрдп рдЖрдкрдХреЛ рдЬрд▓реНрджреА рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЖрдкрдХреЛ рдХреЛрдб рдХреА рдкрд╣рд▓реА 1k рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдЖрдирдВрдж рд▓реЗрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдпрд╣ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЖрдкрдХреЛ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЖрдкрдХреЛ рдирд┐рд░реНрджреЗрд╢, рд╕реНрдХреЛрдк рдФрд░ рджреЛ-рддрд░рдлрд╝рд╛ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рдЦреЛ рдЬрд╛рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдЬреЛ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╕рднреА рдкрд░рддреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЗ рд╣реИрдВ, рдЖрдкрдХреЗ рдХреЛрдб рдХреЗ рд╣рдВрд╕ рдЧреАрдд рдХрд╛ рдЕрдВрддрд┐рдо рд░рд╛рдЧ рд╣реЛрдЧрд╛, рдЬрд┐рд╕реЗ рддрд╛рдЬреЗ рдХрд╛рдо рдкрд░ рд░рдЦрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рднреА рд╕реНрдкрд░реНрд╢ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рдЯреВрдЯ рдЬрд╛рдПрдЧрд╛ред рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИ? Angular.js 2009 рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрдм рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдХреА рджреБрдирд┐рдпрд╛ рдХрд╛рдлреА рд╕рд░рд▓ рд▓рдЧ рд░рд╣реА рдереА рдФрд░ рдХрд┐рд╕реА рдиреЗ рднреА рдЖрд╡реЗрджрди рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдЕрдЪреНрдЫреЗ рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪрд╛ рдерд╛ред рдЖрдкрдХреЛ рд▓реЗрдЦрдХреЛрдВ рдХреЛ рджреЛрд╖ рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП - рдЙрдиреНрд╣реЛрдВрдиреЗ рд╕рд┐рд░реНрдл рдХреБрдЫ рдирдП рдЪрд┐рдкреНрд╕ рдХреЗ рд╕рд╛рде рдмреИрдХрдмреЛрди рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рддрд┐рдпреЛрдЧреА рдмрдирд╛рдпрд╛ рдФрд░ рдХрдо рдкреНрд░рд┐рдВрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ (рдФрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдпрд╣ рд╕рдм рдХрд┐рдпрд╛, рдХрд┐рд╕ рдХреАрдордд рдкрд░ рдПрдХ рдФрд░ рд╕рд╡рд╛рд▓)редAngular2
рдмрд╕ рдПрдХ рд╣реИрд▓реЛ-рд╡рд░реНрд▓реНрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдПрдВ рдФрд░ рд╢рд▓рдЬрдо рдореЗрдВ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рджреЗрдЦреЗрдВред рдореБрдЭреЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (рдФрд░ рдореИрдВ 100% рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ рдореИрдВ рд╣рд░ рджрд┐рди рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ - рдирд╣реАрдВ, рджреЛрд╕реНрддреЛрдВ, рдЬреЗрдПрд╕ рдореЗрдВ рд╕реНрдереИрддрд┐рдХ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдПрдХ рд░рд╛рдордмрд╛рдг рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдореБрдЭреЗ рдкреНрд░рд┐рдВрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдПрд░рд┐рдХ рдПрд▓рд┐рдпрдЯ рдХреЗ рдЕрдЪреНрдЫреЗ рд╡рд┐рдЪрд╛рд░) рдФрд░ рд╕рдВрдХрд▓рдХ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рдордп рддрдХ Angular2 рдХреЛ рд╕реНрдердЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдерд╛ред рдореИрдВ рдЖрд▓рд╕реА рд╣реВрдВ, рдФрд░ рдореЗрд░реЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреЛрдб рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ рд╣реИред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдПрдВрдЧреБрд▓рд░ 2 рдХреЗ рд▓реЗрдЦрдХ рдПрдХ рдЙрджреНрдпрдо рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрджрд░реНрд╢ рдкреНрд░рдгрд╛рд▓реА рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг, рдФрд╕рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдврд╛рдВрдЪреЗ рдХреЛ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рд░рд┐рдПрдХреНрдЯ рдХреЛ рд╣рд░рд╛ рджреЗрдЧрд╛ред рд╢рд╛рдпрдж рдореИрдВ рдЧрд▓рдд рд╣реВрдВ, рдФрд░ рдореЗрд░реА рд░рд╛рдп рдмрджрд▓ рд╕рдХрддреА рд╣реИ - рдореБрдЭреЗ Angular2 рдореЗрдВ рдЬреНрдпрд╛рджрд╛ рдЕрдиреБрднрд╡ рдирд╣реАрдВ рд╣реИ, рд╣рдордиреЗ рдЕрдВрдд рдореЗрдВ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдХреИрд▓рдХреБрд▓реЗрдЯрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдпрд╛ рд╣реИред Vue.js рдкрд░ рдПрдХ рдЕрджреНрднреБрдд рддреБрд▓рдирд╛ рдкреГрд╖реНрда Angular2 рдХреЛ рдПрдХ рдЕрдЪреНрдЫреА рдкреНрд░рдгрд╛рд▓реА рдХрд╣рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ Vue.js. рдХреЗ рд╕рд╛рде рдЖрдо рддреМрд░ рдкрд░ рдХрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВредVue.js
Vue.js рдПрдХ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореИрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рдерд╛ (рдЗрд╕рдХреЗ рдмрд╛рдж рдореИрдВ Vue.js 2 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ Vue рдХреЗ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдИ рд╕реБрдзрд╛рд░ рдкреНрд░рд╛рдкреНрдд рд╣реБрдП рд╣реИрдВ, рдФрд░ рдпрд╣ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ)ред рдореЗрд░реЗ рд▓рд┐рдП, рд▓рд╛рд▓рд┐рддреНрдп рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрддрддрд╛ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕рдорд╛рдзрд╛рди рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рд╣реБрдП, Vue.js рдЬреЗрдПрд╕ рдореЗрдВ рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╕рдлрд▓рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ 2007 рдореЗрдВ рдореБрдЭреЗ Jquery рджреНрд╡рд╛рд░рд╛ рдорд╛рд░рд╛ рдЧрдпрд╛ рдерд╛ред рдпрджрд┐ рдЖрдк Vue.js рдХреА рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЗ рдЧреНрд░рд╛рдл рдХреЛ рджреЗрдЦреЗрдВ, рддреЛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЗрд╕ рд╡рд░реНрд╖ рдЙрд╕рдиреЗ рдореБрдЭреЗ рди рдХреЗрд╡рд▓ рдкреНрд░рд╕рдиреНрди рдХрд┐рдпрд╛:Vue Github рдкрд░ - 2016 рдХреА рд╢реАрд░реНрд╖ 1 JS рдкрд░рд┐рдпреЛрдЬрдирд╛ (рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рд╕рд╛рде рд╢рд▓рдЬрдо рдХреЗ рдмреАрдЪ)редGoogle рд░реБрдЭрд╛рдиреЛрдВ рдореЗрдВ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, 2016 рдореЗрдВ Vue.js рдиреЗ рддреАрд╡реНрд░ рд░реВрдк рд╕реЗ рдмреЗрд╣рддрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡реНрдпрдХреНрдд рдХреА (рдмреЗрд╢рдХ, рдпрд╣ рдПрдХ рдмрд╣реБрдд рдмрдбрд╝реЗ рдЕрд╕реНрдкрддрд╛рд▓ рдореЗрдВ рдФрд╕рдд рддрд╛рдкрдорд╛рди рд╣реИ, рдФрд░ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдЕрдиреБрд░реЛрдз рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ - рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХрд╛ рдПрдХ рдмрд╣реБрдд рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд╕рдВрдХреЗрдд)редhttps://www.google.com/trends/explore?q=vue.js,react.js,angular.jsVue.js рд╕рдмрд╕реЗ рддреЗрдЬреА рд╕реЗ рдмрдврд╝рддреЗ (рд╕рдореБрджрд╛рдп рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдкрд╕рдВрдж рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ) рдФрд░ 2016 рдореЗрдВ Vue Dev Tools рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛) JS рд╕рдорд╛рдзрд╛рди 2016 рдореЗрдВ, рдФрд░ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рд╣рд┐рдкрд╕реНрдЯрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ рдФрд░ рдлреИрд╢рдиреЗрдмрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдирд╣реАрдВ рд╣реИ, рдЬреЛ рд╣рд░ 3 рдорд╣реАрдиреЗ рдореЗрдВ рдПрдХ рдирдпрд╛ JS рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛ рд╣реИ, рдпрд╛ PR рд╡рд┐рднрд╛рдЧ рдХрд╛ рдХрд╛рдо рдмрд╣реБрдд рдмрдбрд╝рд╛ рд╣реИ рдХрдВрдкрдиреАредLaravel рдиреЗ рдХрд░реНрдиреЗрд▓ рдореЗрдВ Vue.js рдХреЛ рдЬреЛрдбрд╝рд╛ рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рдЧрдВрднреАрд░ рджрд╛рд╡рд╛ рд╣реИредVue.js рдХреЗ рдкреЗрд╢реЗрд╡рд░реЛрдВ
Vue.js рдкрдардиреАрдпрддрд╛, рдХреЛрдб рдХреА рд╕реНрдерд┐рд░рддрд╛ рдФрд░ рдЗрд╕рдХреЗ рдЖрдирдВрдж рдХреЗ рдмреАрдЪ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рд╕рдВрддреБрд▓рди рдмрдирд╛рдП рд░рдЦрддрд╛ рд╣реИ, рдпрд╣ рдХреЛрдб, рд▓реЗрдЦрдиред рдпрд╣ рд╕рдВрддреБрд▓рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рдХреЛрдгреАрдп 1 рдХреЗ рдмреАрдЪ рд▓рдЧрднрдЧ рд╕рдорд╛рди рджреВрд░реА рдкрд░ рд╕реНрдерд┐рдд рд╣реИ, рдФрд░ рдпрджрд┐ рдЖрдк vue.js рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рддреБрд░рдВрдд рдзреНрдпрд╛рди рджреЗрдВрдЧреЗ рдХрд┐ рдЙрд╕рдиреЗ рдЗрди рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рд╕реЗ рдХрд┐рддрдиреЗ рдЙрдкрдпреЛрдЧреА рд╡рд┐рдЪрд╛рд░ рдЙрдзрд╛рд░ рд▓рд┐рдП рд╣реИрдВредрдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ Vue.js рд╕реЗ рдореИрдВрдиреЗ рдШрдЯрдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг, рд╕рд╣рд╛рд░рд╛, рдШрдЯрдХ рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рдПрдХ рддрд░рдлрд╝рд╛ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо, рдкреНрд░рджрд░реНрд╢рди, рдмреИрдХрдПрдВрдб рдкрд░ рд░реЗрдВрдбрд░ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдФрд░ рдЙрдЪрд┐рдд рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдХреЗ рдорд╣рддреНрд╡ рдХреЛ рд▓рд┐рдпрд╛ред Vue.js рдиреЗ рдЕрдЪреНрдЫреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдФрд░ рдЯреВ-рд╡реЗ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рд╕рд╛рде Angular1 рд╕рдорд╛рди рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕реЗ рд▓рд┐рдпрд╛, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рддреБрд░рдВрдд рдЕрдкрдиреЗ рдкреИрд░ (рдПрдХ рдШрдЯрдХ рдХреЗ рдЕрдВрджрд░) рдХреЛ рд╢реВрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ред Vue.js рдХреЗ рддрд╣рдд рдХреЛрдб рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ - рдореИрдВрдиреЗ рдЗрд╕реЗ рд╣рдорд╛рд░реА рдЯреАрдо рдореЗрдВ рджреЗрдЦрд╛ред Vue.js рдХреЛ рдХрд┐рд╕реА рднреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП Vue.js рдХреЛ рдЕрдкрдиреЗ рд╡рд┐рд░рд╛рд╕рдд рдХреЛрдб рдЖрдзрд╛рд░ рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ рдФрд░ рдкрдардиреАрдп рдХреЛрдб рдХреЗ рд▓рд┐рдП jQuery рд╣реИрд╢ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВредрдЬрд╛рджреВ рдХреА рд╕рд╣реА рдорд╛рддреНрд░рд╛
Vue.js HTML-рдХреЗрдВрджреНрд░рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдФрд░ JS рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ: рдЖрдк рд╡реНрдпрд╡рд╕рд╛рдп рдХреЗ рдХрд╛рдо рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдХрд╛рдлреА рдЬрдЯрд┐рд▓ рдЯреЗрдореНрдкрд▓реЗрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк HTML рдЯреЗрдореНрдкрд▓реЗрдЯ рдЖрдорддреМрд░ рдкрд░ рддрдм рднреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ рд╡рд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрдбрд╝рд╛ рд╣реИред рдЗрд╕ рд╕рдордп рддрдХ, рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдкрдиреЗ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдЕрдЪреНрдЫреА рдкреНрд░рдЧрддрд┐ рдХреА рд╣реИ рдФрд░ рдЖрдк рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХреЛ рдкреБрдирд░реНрдЧрдард┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЫреЛрдЯреЗ рдШрдЯрдХреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдЗрд╕ рд╕рдордп рдЖрдк рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреА рдкреВрд░реА "рддрд╕реНрд╡реАрд░" рдХреЛ рдмрд╣реБрдд рд╢реБрд░реБрдЖрдд рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рджреЗрдЦрддреЗ рд╣реИрдВред рдореЗрд░рд╛ рдЕрдиреБрднрд╡ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЙрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдХрд╛рдлреА рдЕрд▓рдЧ рд╣реИ рдЬреЛ рд░рд┐рдПрдХреНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЖрдорддреМрд░ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдЕрдВрддрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рдордп рдФрд░ рдкреНрд░рдпрд╛рд╕ рдмрдЪрд╛рддрд╛ рд╣реИред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЖрдкрдХреЛ рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИрдХреЛрдб рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ, "рдбреНрд░рд╛рдлреНрдЯ" рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рдордп рдорд╛рдЗрдХреНрд░реЛ рдХрдВрдкреНрдпреВрдЯрд░ рдФрд░ рдорд╛рдЗрдХреНрд░реЛрдлрдВрдХреНрд╢рди рдореЗрдВ рдШрдЯрдХреЛрдВ рдХреЛ рддреЛрдбрд╝ рджреЗрдВ, рдЕрдиреНрдпрдерд╛ рдЖрдк рд╕рдЪрдореБрдЪ рдЙрдирдХреЗ рдмреАрдЪ рдШреБрдВрдШрд░рд╛рд▓реЗ рдмреНрд░реИрдХреЗрдЯ рдФрд░ рдПрдЪрдЯреАрдПрдордПрд▓ рдХреА рдЧрдбрд╝рдЧрдбрд╝рд╛рд╣рдЯ рдореЗрдВ рджрдлрди рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдмрд╣реБрдд рд╕рдордп рдмрд┐рддрд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдкреНрд░реЙрдкреНрд╕ рдХреЛ рдЪрдордХрд╛рдиреЗ рдФрд░ рд╕реБрдкрд░-рдЫреЛрдЯреЗ рдШрдЯрдХреЛрдВ (рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдХрднреА рднреА рдкреБрди: рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛) рдХреЛ рдлрд┐рд░ рд╕реЗ рднрд░рдирд╛ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдЬрдм рдореБрдЭреЗ рдЕрдЪрд╛рдирдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмреАрдЪ рдореЗрдВ рдХреЛрдб рдХреЗ рддрд░реНрдХ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИредрдЖрдХрд╛рд░
Vue.js рдореЗрдВ HTML рд░реВрдкреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдПрдХ рдЦреБрд╢реА рд╣реИред рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ рджреЛ рддрд░рдлрд╛ рдмрд╛рдзреНрдпрдХрд╛рд░реА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдореБрд╢реНрдХрд┐рд▓ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рднреА, рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдкрд╣рд░реЗрджрд╛рд░ рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ рдХреЛрдгреАрдп 1 рд╕реЗ рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВред рдШрдЯрдХреЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рддрд░рдлрд╝рд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╡рд╛рд╣ рд╣рдореЗрд╢рд╛ рдЖрдкрдХреА рд╕реЗрд╡рд╛ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИредрдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреЗ
рдпрджрд┐ рдЖрдк рд╕рдВрдХрд▓рди рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ linting, PostCSS рдФрд░ ES6 рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ ред рдПрдХрд▓-рдлрд╝рд╛рдЗрд▓ рдШрдЯрдХ Vue.js 2 рдореЗрдВ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдШрдЯрдХреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдореБрдЦреНрдп рддрд░реАрдХрд╛ рдмрдирддреЗ рдкреНрд░рддреАрдд рд╣реЛ рд░рд╣реЗ рд╣реИрдВред рд╡реИрд╕реЗ, рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдПрдХрд▓-рдлрд╝рд╛рдЗрд▓ рдШрдЯрдХреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ Scoped CSS рдХрд╛ рд╡рд┐рдЪрд╛рд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИ рдФрд░ рд╕рдЦреНрдд CSS рдирд╛рдордХрд░рдг рдирд┐рдпрдореЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдмреАрдИрдПрдо рдЬреИрд╕реА рдХрдХреНрд╖рд╛рдПрдВ рдФрд░ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпрд╛рдВ редрд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди
Vue.js рдХреЗ рдкрд╛рд╕ рдбреЗрдЯрд╛ () рдФрд░ рдкреНрд░реЙрдкреНрд╕ () рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдХрд╛рдлреА рд╕рд░рд▓ рдФрд░ рдЙрдкрдпреЛрдЧреА рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рд╣реИ - рд╡реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдареАрдХ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрддреНрдорд╛ рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдФрд░ рдорд╛рдВрдЧрддрд╛ рд╣реИ, рддреЛ рд╡рд╣рд╛рдВ Vuex рд╣реИ (рдЬреЛ, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ Mobx рдХреЗ рд╕рдорд╛рди рд╣реИ - рд░рд╛рдЬреНрдп рд╡рд╣рд╛рдВ рдкрд╛рд░рд╕реНрдкрд░рд┐рдХ рд╣реИ)ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Vue.js рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдкреНрд░рддрд┐рд╢рдд Vuex рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИредрдЙрддреНрдкрд╛рджрдХрддрд╛
рд╡рд┐рд╖рдп рд╕рдордЧреНрд░ рд╣реИ, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ vue.js рджреЛрдиреЛрдВ рддреЗрдЬ рд╣реИрдВред рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА, рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░, рдФрд╕рддрди vue.js рдХрд╛рдлрд╝реА рддреЗрдЬрд╝реА рд╕реЗ рд╣реЛрддрд╛ рд╣реИредрдЯреЛрдбреЛ рдПрдорд╡реАрд╕реА рдкрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рдПрдХ рдЕрджреНрднреБрдд рд▓рд┐рдВрдХ рдорд╛рдк рдХреЗ рд╕рд╛рде рдЪрд▓рддрд╛ рд╣реИ:eigenmethod.imtqy.com/mol/app/bench/#bench=%2Ftodomvc%2Fbenchmark%2Fenchmark=angular2~angularjs~mol~react~vue~vanillajs#ortort####рдФрд░ рдпрд╣рд╛рдВ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЦрд╛рддреЗ рд╣реИрдВ (рдЗрдЪреНрдЫреБрдХ рдкрд╛рд░реНрдЯреА рд╕реЗ, рд╣рд╛рд▓рд╛рдВрдХрд┐) редрдПрдХ рдФрд░ рд╡рд┐рд╕реНрддреГрдд рдФрд░ рд╕рдордЭрджрд╛рд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рддреБрд▓рдирд╛:stefankrause.net/js-frameworks-benchmark4/webdriver-ts/table.htmlрд╡рд┐рдкрдХреНрд╖ VueJS
рд░рдирдЯрд╛рдЗрдо рдЯреЗрдореНрдкрд▓реЗрдЯ рддреНрд░реБрдЯрд┐рдпрд╛рдВ
рд╕рдмрд╕реЗ рдмрдбрд╝реА: рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдореЗрдВ рдЕрдкреНрд░рд┐рдп рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐рдпрд╛рдВред рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдкреАрдбрд╝рд┐рддред рдпрд╣ рдХреЛрдгреАрдп 1. рдХреЗ рд╕рдорд╛рди рд╣реИред Vue.js рдЬреЗрдПрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдХрдИ рдЙрдкрдпреЛрдЧреА рдЪреЗрддрд╛рд╡рдиреА рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддрд╛ рд╣реИ: рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рдЖрдк рдкреНрд░реЙрдкреНрд╕ рдХреЛ рдореНрдпреВрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдбреЗрдЯрд╛ () рдкрджреНрдзрддрд┐ рдХрд╛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣рд╛рдВ рд░рд┐рдПрдХреНрдЯ рдХрд╛ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдмрд╣реБрдд рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реЛрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд░рдирдЯрд╛рдЗрдо рдЯреЗрдореНрдкреНрд▓реЗрдЯ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдЕрднреА рднреА V.js. рдХреА рдХрдордЬреЛрд░реА рд╣реИрдВред рдЕрдкрд╡рд╛рдж рд╕реНрдЯреИрдХ рдХреЗ рдирд┐рд╢рд╛рди рдЕрдХреНрд╕рд░ рдмреЗрдХрд╛рд░ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ Vue.js рдХреЗ рдЖрдВрддрд░рд┐рдХ рддрд░реАрдХреЛрдВ рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рдЗрд╕ рд╡рд░реНрдЧ рдореЗрдВ, JSX рдЕрдХреНрд╕рд░ рдЕрдзрд┐рдХ рд╕реБрдЦрдж рд╣реЛрддрд╛ рд╣реИ: рд╕рдВрдХрд▓рди "JS рд╕реЗ JS рддрдХ" рдХреЗ рдХрд╛рд░рдг, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рд╕реЗ рдЖрдорддреМрд░ рдкрд░ рдареАрдХ рд╡рд╣реА рд╣реЛрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рддреНрд░реБрдЯрд┐ рдХреЛрдб рдореЗрдВ рд╣реБрдИ рдереАредрдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ
Vue.js рдХрд╛ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рдЕрднреА рднреА рдХрд╛рдлреА рдпреБрд╡рд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдореБрджрд╛рдп рд╕реЗ рд╕реНрдерд┐рд░ рдШрдЯрдХреЛрдВ рдХреЛ рдЙрдВрдЧрд▓рд┐рдпреЛрдВ рдкрд░ рдЧрд┐рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ Vue.js 1 рдХреЗ рд▓рд┐рдП рдмрдирд╛рдП рдЧрдП рдереЗ, рдФрд░ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рдХрд┐ Vue.js рдХреЗ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЗрд╕ рддрдереНрдп рд╕реЗ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд┐рдП рдмрд┐рдирд╛ Vue.js рдореЗрдВ рд╢рд╛рдВрдд рдЪреАрдЬреЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╢рд╛рдпрдж рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЕрдЬрд╛рдХреНрд╕ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ( рдпрджрд┐ рдЖрдк рдЖрдЗрд╕реЛрдореЛрд░реНрдлрд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ, рдЕрдиреНрдпрдерд╛ рдПрдХреНрд╕рд┐рдпреЛрд╕ ) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдЧрд╛ редрдЧреИрд░-рдЕрдВрдЧреНрд░реЗрдЬреА рднрд╛рд╖реА рд╕рдореБрджрд╛рдп
рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рдХреЛрдб рдореЗрдВ рдЪреАрдиреА рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ, рдФрд░ рдпрд╣ рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ: Vue.js рдЪреАрди рдореЗрдВ рдПрдХ рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рд╕рдорд╛рдзрд╛рди рдмрди рд░рд╣рд╛ рд╣реИ (Vue.js рдЪреАрдиреА рдмреЛрд▓рддреЗ рд╣реИрдВ)рдПрдХ рд╡реНрдпрдХреНрддрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ред
рдмрд▓реНрдХрд┐, рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдЖрдк рдЗрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рдЦреЗрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЗрд╡рд╛рди рдЖрдк рд╡рд╣ рд╡реНрдпрдХреНрддрд┐ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ Google рдФрд░ рдЙрд▓реНрдХрд╛ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж Vue рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ред рд▓рд╛рд░рд╡реЗрд▓, рдмреЗрд╢рдХ, рдПрдХ рдПрдХрд▓-рдкреБрд░реБрд╖ рдкрд░рд┐рдпреЛрдЬрдирд╛ рднреА рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рд╡рд╣ рдЕрднреА рднреА рдмрд╣реБрдд рд╕рдлрд▓ рд╣реИ, рд╣реИ рдирд╛?рджреНрд░реБрдкрд╛рд▓ рдореЗрдВ Vue.js
Disclaimer: Drupal 8 Qwintry, , PHP Node.js , legacy тАУ Drupal. qwintry.com Drupal, Vue.js . , , , -, , , , . , Vue Drupal: , - , . JSON API тАУ , . , REST API Saas , , - , . . , 2010 Ajax Drupal. , Drupal , - Ajax тАУ . , , ctools_wizard_multistep_form (), ,
ajax_render !рдЗрд╕реА рд╕рдордп, рдЗрди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЖрдзреБрдирд┐рдХ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рд╕реЗ рдЖрдЧреЗ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдзреБрдирд┐рдХ рдЬреЗрдПрд╕ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдЙрдиреНрд╣реЗрдВ рдЕрд╡рд╕рд╛рдж рдореЗрдВ рдЪрд▓рд╛ рд░рд╣реА рд╣реИред рд╣рд╛рдВ, рдореИрдВ рдПрдХ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдЦреБрдж рдХреЛ рдкрд╣рдЪрд╛рдирддрд╛ рд╣реВрдВред рддреЛ рджреЛрд╕реНрддреЛрдВ, рдореЗрд░реА рдмрд╛рдд рд╕реБрдиреЛ! рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреЗрд╣рддрд░ рдкрд▓ рдФрд░ рддрд░реАрдХрд╛ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛ред рдЕрднреА Vue.js рд▓реЗрдВ, рдЗрд╕реЗ рд╕рд╛рдЗрдЯреЛрдВ / рд╕рднреА / рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рдбрд╛рд▓реЗрдВ, рдЗрд╕реЗ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рд╕рд╛рде drupal_add_js () рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдХреЛрдб рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВред рдЖрдк рд╣реИрд░рд╛рди рд░рд╣ рдЬрд╛рдПрдВрдЧреЗ рдХрд┐ рдПрдХ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдбреНрд░реБрдкрд▓ рдХреЗрд╡рд▓ рдЬреЗрдирд╕рди рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ рдЬрдм рд╕рднреА рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛрдб, рдлреЙрд░реНрдо рд╕рд╣рд┐рдд, рдкреВрд░реА рддрд░рд╣ рд╕реЗ Vue.js.Yue2 рдореЗрдВ Vue.js
рдордЬреЗрджрд╛рд░ рддрдереНрдп: Yii рдХреЛ рдЪреАрдиреА рднрд╛рд╖рд╛ рдХреЗ рдбреЗрд╡рд▓рдкрд░ Qiang Xue рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдХреЛрдИ Yii + Vue.js рдХреЛ рдПрдХ рд╕реНрдЯреИрдХ рдХрд╣ рд╕рдХрддрд╛ рд╣реИ рди рдХрд┐ рдХреЗрд╡рд▓ рдПрдХ рд╕реНрдЯреИрдХ, рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рдкрд╣рд▓реА рдХреЛрд╢рд┐рд╢ рдкрд░ рдЙрдЪреНрдЪрд╛рд░рдг рдХрд░рдирд╛ рд▓рдЧрднрдЧ рдЕрд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдЪреАрдиреА рд╡рд┐рд░рд╛рд╕рдд (рдПрдХ рдЕрдЪреНрдЫреЗ рддрд░реАрдХреЗ рд╕реЗ) рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдЯреИрдХ рднреА рд╣реИред Qwintry.com рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП (рдЕрднреА рддрдХ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ), рд╣рдордиреЗ Yii2 рдХреЛ рдЪреБрдирд╛, рдЬреЛ, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреЗ рдФрд░ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ PHP рдлреНрд░реЗрдорд╡рд░реНрдХ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд▓рд╛рд░рд╡реЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╣реАрдВ рд╣реИ, рдЬрд┐рд╕рдиреЗ рдкреАрдПрдЪрдкреА рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдХрджрдо рд░рдЦрд╛ рд╣реИ , рд▓реЗрдХрд┐рди Yii2 рд╕реНрдЯреИрдХ рд╣рдорд╛рд░реЗ рд╕рд╛рде рдХрд╛рдлреА рдареАрдХ рд╣реИред(рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдо рд╕рдордп-рд╕рдордп рдкрд░ рд▓рд╛рд░рд╡реЗрд▓ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рд╡рд╣рд╛рдВ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕, рджреЛрд╣рди рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдПрдХ рдЕрдзрд┐рдХ рдкрд░рд┐рдкрдХреНрд╡ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рд╣реИ)ред рд╣рдо рдзреАрд░реЗ-рдзреАрд░реЗ HTML рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ Yii2 рдФрд░ PHP рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ, REST API рдкрд░ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрдХреНрд╖ рдХреЗ рд▓рд┐рдП JSON рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ Vue.js / Swift / Java рдкрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИред рдПрдкреАрдЖрдИ-рдкрд╣рд▓реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╣рдорд╛рд░реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдХреНрд░рд┐рдп рд░рд┐рдХреЙрд░реНрдб рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдкреАрдЖрдИ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЧрдВрднреАрд░ рд╣реИрдВ рдФрд░ рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдо рдЕрдЪреНрдЫреЗ рдПрдкреАрдЖрдИ рдкреНрд░рд▓реЗрдЦрди рдкрд░ рдмрд╣реБрдд рд╕рдордп рдмрд┐рддрд╛рддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдпрд╣ рдПрдкреАрдЖрдИ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рди рд╣реЛред рдХреЛрдб рдЕрдиреБрднрд╛рдЧреЛрдВ рдореЗрдВ рдЬрд╣рд╛рдВ HTML рднрд╛рдЧ PHP рд╕реНрддрд░ рдкрд░ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ, рд╣рдо рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдФрд░ рд╡реЗрдмрдкреИрдХ рдХреЛ рдмрдВрдбрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╡рд╛рдИ 2 рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддреИрдирд╛рддреА рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ, рд╡реАрдпреВ рд╕рд┐рдВрдЧрд▓-рдлрд╛рдЗрд▓ рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред PHP7 рдФрд░ рдирд╡реАрдирддрдо MySQL рдХреЗ рд╕рд╛рде, рд╣рдорд╛рд░реЗ Yii2 JSON рдмреИрдХрдПрдВрдб рдХрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп рдиреЛрдб рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИредjs рдмреИрдХреЗрдВрдбреНрд╕ (рдореИрдВ 15-20ms рдХреЗ рдСрд░реНрдбрд░ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдЧрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ), рдпреЗ рдХреЙрд╕реНрдорд┐рдХ рдЖрдВрдХрдбрд╝реЗ рдирд╣реАрдВ рд╣реИрдВ, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдорд╛рд░реА рдЬрд░реВрд░рддреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рдФрд░, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЬреЛ рджреЗ рд╕рдХрддрд╛ рд╣реИ рдЙрд╕рд╕реЗ 10-20 рдЧреБрдирд╛ рддреЗрдЬ рд╣реИ рд╣рдорд╛рд░реА рдкреБрд░рд╛рдиреА Drupal рд╕рд╛рдЗрдЯред рдЗрд╕реА рд╕рдордп, рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдкреБрд░рд╛рдирд╛ (рдФрд░ рдЙрдмрд╛рдК, рд╢рд╛рдпрдж) рдкреАрдПрдЪрдкреА рд╣реИ рдЬреЛ рд╕рдВрдЧреАрддрдХрд╛рд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдкреВрд░реА рддрд╛рдХрдд рдФрд░ рдПрдХ рд╕реНрдерд┐рд░ рдХреЛрдб рдЖрдзрд╛рд░ рдХреЗ рд╕рд╛рде рд╣реИред Yii2 рдФрд░ Vue.js рдкрд░ рдирд┐рд░реНрдорд┐рдд рдЗрдВрдЯрд░рдлреЗрд╕ рдХреА рдЬрд╡рд╛рдмрджреЗрд╣реА рдмрд╣реБрдд рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рдФрд░, рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдпрд╣рд╛рдВ рднреА рд╕рдм рдХреБрдЫ рдХреНрд░рдо рдореЗрдВ рд╣реИредYii2 рдФрд░ Vue.js рдкрд░ рдирд┐рд░реНрдорд┐рдд рдЗрдВрдЯрд░рдлреЗрд╕ рдХреА рдЬрд╡рд╛рдмрджреЗрд╣реА рдмрд╣реБрдд рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рдФрд░, рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдпрд╣рд╛рдВ рднреА рд╕рдм рдХреБрдЫ рдХреНрд░рдо рдореЗрдВ рд╣реИредYii2 рдФрд░ Vue.js рдкрд░ рдирд┐рд░реНрдорд┐рдд рдЗрдВрдЯрд░рдлреЗрд╕ рдХреА рдЬрд╡рд╛рдмрджреЗрд╣реА рдмрд╣реБрдд рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рдФрд░, рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдпрд╣рд╛рдВ рднреА рд╕рдм рдХреБрдЫ рдХреНрд░рдо рдореЗрдВ рд╣реИредрд╣рдо рдХрдИ рдЖрдВрддрд░рд┐рдХ рдФрд░ рдмрд╛рд╣реНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ Vue.js рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдмреИрдХрдПрдВрдб Node.js рдкрд░ рдЪрд▓рддрд╛ рд╣реИ - рдореИрдВ рдКрдкрд░ рдХреБрдЫ рднреА рдирдпрд╛ рдирд╣реАрдВ рдЬреЛрдбрд╝реВрдВрдЧрд╛, рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИредрдирд┐рд╖реНрдХрд░реНрд╖
рд╣рдо рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд▓рдЧрднрдЧ 4 рдорд╣реАрдиреЗ рд╕реЗ рд╣рд░ рджрд┐рди Vue.js рдХреЛрдб рд▓рд┐рдЦ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рд╣реИрдВред 4 рдорд╣реАрдиреЗ рдмреИрдХрдПрдВрдб рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреЗрдПрд╕ рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рд╕рднреНрдп рдЕрд╡рдзрд┐ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдкрд╛рдВрдЪ рдврд╛рдВрдЪреЗ рдкреИрджрд╛ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдорд░ рдЬрд╛рддреЗ рд╣реИрдВ :) рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдЖрдЧреЗ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Vue.js рдЕрдЧрд▓реЗ 16-24 рдорд╣реАрдиреЛрдВ рдореЗрдВ JS рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рд╕рдорд╛рдзрд╛рди рд╣реЛрдЧрд╛ рдпрджрд┐ Evan рдЖрдк рд╕рд╣реА рдХрджрдо рдЙрдард╛рддреЗ рд╣реИрдВ, рдХрдо рд╕реЗ рдХрдо рдмреИрдХ-рдПрдВрдб рдФрд░ рдЫреЛрдЯреА рдлреНрд░рдВрдЯ-рдПрдВрдб рдЯреАрдореЛрдВ рдХреЗ рдмреАрдЪред 2017 рдореЗрдВ рд░рд┐рдПрдХреНрдЯ рд╕реНрдЯреИрдХ рдореБрдЦреНрдп рдзрд╛рд░рд╛ рд╣реЛрдЧрд╛, рдЦрд╛рд╕рдХрд░ рдЕрдЧрд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдЙрд╕реА рдЧрддрд┐ рд╕реЗ рдмрдврд╝рддрд╛ рдФрд░ рд╕реБрдзрд░рд╛ рд░рд╣рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдЕрднреА рд╣реИредрдпреБрдкреАрдбреА: рдпрд╣ рд▓реЗрдЦ рд╢реАрд░реНрд╖ HackerNews рдорд╛рд░рд╛, рдФрд░ рд╡рд╣рд╛рдБ рдПрдХ рдЙрдкрдпреЛрдЧреА рдЪрд░реНрдЪрд╛ (250+ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ) рд╢реБрд░реВ рд╣реЛ рдЧрдпреА: news.ycombinator.com/item?id=13151317рд╢реАрд░реНрд╖ рд░реЗрдбрд┐рдЯ рдореЗрдВ рд╣рдо рднреА рджреМрд░рд╛ рдХрд┐рдпрд╛ webdev, 60 + рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдпрд╣рд╛рдВред рд╡рд╣рд╛рдБ рд╕реЗ Angular2 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдордЬреЗрджрд╛рд░ рдЯрд┐рдкреНрдкрдгреА-рд░рд╛рдп:Google рдХреЗ рд╕рднреА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ 2000 рдХреЗ рджрд╢рдХ рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ Microsoft рдбреЙрдХреНрд╕ рдкрдврд╝рдиреЗ рдХреА рддрд░рд╣ рд╣реИрдВред
"рдПрдХ рдХреЛрдгреАрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗрдХ рдХрд╛ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рд╣реИ! рдмрд╕ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдзрд╛рд░рд╣реАрди рд╕рдВрджрд░реНрдн рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореНрдпреВрдЯреЗрдЯрд░ рдмреЗрд╕ рдореЗрдореЛрд░реА рд▓реЛрдбрд░ рд╡рд┐рд░рд╛рд╕рдд рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ MODOK рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ (рдХреЛрд░ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ: рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдЕрдкрдардиреАрдп рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ)ред рддрдм рдЖрдк рдЕрдкрдиреЗ рдХреЛрдгреАрдп рдХрд░реНрдиреЗрд▓ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрдВрдЧреЗ, рд╡реЗрдмрдкреИрдХ 2.3.9 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВ (рдзреНрдпрд╛рди рджреЗрдВ: 2.3.8 рдирд╣реАрдВ рдЬреИрд╕рд╛ рдХрд┐ рднрдВрдбрд╛рд░ рдХреЗ рд╕рд╛рде рдЖрдкреВрд░реНрддрд┐ рдХреА рдЧрдИ рд╣реИ)ред рдпрд╣ рдЖрдкрдХреЛ рдПрдХ рдорд╣рд╛рди рдХреЛрдгреАрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдХреЛрдгреАрдп: рд╡рд┐рдХрд╛рд╕ рдХреЛ рд╕рд░рд▓ рдФрд░ рдлрд┐рд░ рд╕реЗ рдордЬрд╝реЗрджрд╛рд░ рдмрдирд╛рдирд╛! "
рдкрд╛рдардХреЛрдВ рд╕реЗ рд╕рд╡рд╛рд▓:
JSX рд╢рд╛рдВрдд рдФрд░ рд╕рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдмрд╣реБрдд рдирд╣реАрдВ рд╣реИрдВ! рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рдЪрд╛рд╣рддреЗ рд╣реИрдВ - рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЕрдкрдиреЗ if рдШрдЯрдХ, рдпреЗ рддреАрди рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ!рдПрдХ рд░реВрдкрд░реЗрдЦрд╛ рдЪреБрдирдирд╛ рдЕрдкреНрд░рд┐рдп рд╣реИ, рдФрд░ рдлрд┐рд░ рдЙрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рдРрд╕реА рдмрд╛рддреЗрдВ рдХрд░реЗрдВ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓рд╛ рд╣рд░ рдирдпрд╛ рдбреЗрд╡рд▓рдкрд░ рдЖрдкрд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рдирд┐рд░реНрдгрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫреЗрдЧрд╛, рдФрд░ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рдШрдЯрдХреЛрдВ рдореЗрдВ рдЖрдкрдХреА рдЖрдБрдЦреЗрдВ рд╣рдореЗрд╢рд╛ рддрдиреНрдордпрддрд╛ рд╕реЗ рдареЛрдХрд░ рдЦрд╛рдПрдВрдЧреАредрдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдШрдЯрдХ "рдорд╛рдереЗ" рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдЧреА рдХрд┐ рдЖрдВрддрд░рд┐рдХ рдШрдЯрдХ рд╣рдореЗрд╢рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рд╕рдорд╛рдзрд╛рди рд╣реИрдВ: github.com/AlexGilleran/jsx-control-statementsрддреЛ рдЖрдк рдХреНрдпрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддреЗ рд╣реИрдВ, рдкреНрд░рд┐рдп, рдЕрдм рдЖрдкрдХреЛ рддрддреНрдХрд╛рд▓ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдФрд░ Vue.js рдХреЛ рд╕рдм рдХреБрдЫ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛?рдирд╣реАрдВ, рдирд╣реАрдВ! рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдврд╛рдВрдЪрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдЖрдкрдХреЛ рдкрдардиреАрдп рдФрд░ рд╕рдорд░реНрдерд┐рдд рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдПрдХ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рднреА рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦреА рдЧрдИ рд╣реИ (рдФрд░ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреЗ рд╕реВрдХреНрд╖реНрдо рдШрдЯрдХ рдФрд░ рд╕реАрдорд╛рдПрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВрдиреЗ "рдбрд╛рдВрдЯрд╛" рдерд╛, рдпрд╣рд╛рдВ рдПрдХ рд╕рдХрд╛рд░рд╛рддреНрдордХ рднреВрдорд┐рдХрд╛ рдирд┐рднрд╛рддреЗ рд╣реИрдВ, рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рд╣реИ) рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдЪрд┐рдд), рдЬреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЬреЗрдПрд╕ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдФрд░ рдЖрдкрдХреА рдЯреАрдо JSX рдореЗрдВ рд╕рдм рдХреБрдЫ рд╕реЗ рдЦреБрд╢ рд╣реИрдВ рдФрд░ рдЖрдк рдмрд╣реБрдд рдХреБрдЫ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рд╕реЗ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рд╢рд╛рдпрдж Vue.js рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдЦреЗрд▓ рдмрд╕ рдореЛрдордмрддреНрддреА рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИред рдХрдИ рдЬреЗрдПрд╕ рдкреНрд░реЗрдореА рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдПрдХ рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕реЗ рдПрдХ рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕реЗ рдХреВрджрддреЗ рд╣реБрдП рдкреНрдпрд╛рд░ рдХрд░рддреЗ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рди рдХрд░реЗрдВ, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЗрд╕ рд╕рдордп рдХреЛ рдХреБрдЫ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рдкрд░ рдЦрд░реНрдЪ рдХрд░рдиреЗ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЛрдЯрд┐рд╕ рдХрд░реЗрдВрдЧреЗредрд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдЯреВрд▓ рдФрд░ рдЕрдиреНрдп рдХрдард┐рдирд╛рдЗрдпреЛрдВ рдХреЗ рдХрд╛рд░рдг рдЕрдкрдиреЗ рдЖрдк рдХреЛ рд░рд┐рдПрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░ рдкрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЖрдкрдХрд╛ рдХреЛрдб jQuery рдпрд╛ рдмреИрдХрдмреЛрди рдореЗрд╕ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рддреЛ Vue.js рдПрдХ рдмреЗрд╣рддрд░реАрди рд╡рд┐рдХрд▓реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рди рдХрд┐ рд╢реИрдХреНрд╖рдгрд┐рдХ, рд╕рд░рд▓ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрддредрдореИрдВрдиреЗ рдкреВрд░рд╛ рд▓реЗрдЦ рдирд╣реАрдВ рдкрдврд╝рд╛, рд▓реЗрдХрд┐рди рд╣реЗрдбрд▓рд╛рдЗрди рдореЗрдВ рдЖрдкрдиреЗ рдкреНрд░рддрд┐рд░рдХреНрд╖рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирдХрд╛рд░рд╛рддреНрдордХ рдХрд╣рд╛ рд╣реИ, рдЖрдк рд╢рд╛рдпрдж рдЕрдкрдиреА рдЕрдиреБрднрд╡рд╣реАрдирддрд╛ рдФрд░ рдореВрд░реНрдЦрддрд╛ рдХреЗ рдХрд╛рд░рдг рд░реВрдврд╝рд┐рд╡рд╛рджреА рдирд╣реАрдВ рд╣реИрдВ, рдЖрдк рдпрд╣ рдирд╣реАрдВ рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд┐рддрдирд╛ рдЕрджреНрднреБрдд рд╣реИ!рдЖрдЗрдП рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░рддрд┐рдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рддрд┐рд░рдХреНрд╖рд╛ рдХреЛ рдЕрд▓рдЧ рдХрд░реЗрдВ (рд╣рдо рдХрд╛рд░реНрдпрд╛рддреНрдордХ рджреГрд╖реНрдЯрд┐рдХреЛрдг, рдкреНрд░рддрд┐рд░рдХреНрд╖рд╛ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреА рд╢реБрджреНрдзрддрд╛ рдХрд╛ рдмрд╣реБрдд рд╕рдореНрдорд╛рди рдХрд░рддреЗ рд╣реИрдВ) рдФрд░ рдЬреЗрдПрд╕ рджреБрдирд┐рдпрд╛ рдФрд░ рдЗрд╕рдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ред рдпрджрд┐ рдХреЛрдИ рдбреЗрд╡рд▓рдкрд░, рдлреЗрд╕рдмреБрдХ рдмреНрд▓реЙрдЧ рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ, рддреЛ рдЦреБрд╢реА рд╕реЗ Immutable.js рдХреЛ рдкрдХрдбрд╝ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдкреНрд░реЛрдбрдХреНрд╢рди рдореЗрдВ рд▓рдЧрд╛ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЙрд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЙрд╕рдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдбреЙрдХ рдирд╣реАрдВ рд╣реИ, рд▓реЛрджрд╢ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдкрд┐рдЫрд▓реА рдкреАрдврд╝реА рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦреЗ рдЧрдП рдмрд╛рдХреА рд╕рднреА рдХреЛрдб рдЙрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ (рд╣рд╛рдВ, рдореБрдЭреЗ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рд▓реЙрд╢ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдЖрд╡рд░рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдзрдиреНрдпрд╡рд╛рдж), рдФрд░ рдЗрд╕рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░ рд╕рдордп рд╕реАрдорд╛ рдХреЛ рд╡рд┐рдлрд▓ рдХрд░ рджреЗрддрд╛ рд╣реИ - рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдбреЗрд╡рд▓рдкрд░ рдиреЗ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░рддрд┐рдорд╛рди рдирд╣реАрдВ рдЦрд░реАрджрд╛, рдмрд▓реНрдХрд┐ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдЖрд╕рдкрд╛рд╕ рдкреНрд░рдЪрд╛рд░ рдХрд┐рдпрд╛ред рдРрд╕рд╛ рдордд рд╕реЛрдЪреЛ рдХрд┐ рдЕрдЧрд░ рдлреЗрд╕рдмреБрдХ рдХреЗ рдкрд╛рд╕ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ рдЬреЛ рд╡реЗ Immutable.js рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд▓реИрдВрдбрд┐рдВрдЧ рдкреГрд╖реНрда рдпрд╛ рдПрд╕рдкреАрдП рдореЗрдВ рдПрдХ рд╕рдорд╛рди рдЖрджреЗрд╢ рдХреА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛрдВрдЧреАредрд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдирд╣реАрдВрдЖрдкрдХреЗ рдирд┐рд╡реЗрд╢рдХ рдкреИрд╕реЗ рд╕реЗ рдмрд╛рд╣рд░ рдЪрд▓реЗрдВрдЧреЗ, рдЖрдкрдХреЛ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдХрд╛рдо рдХрд░рдиреЗ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рд░реЛрд▓ рдЖрдЙрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдпрд╣ рдХреЛрдб рд╕рд╛рдорд╛рдиреНрдп рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдФрд░ рдЬрд╣рд╛рдВ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рд╡рд╣рд╛рдВ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП Immutable.js рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ (Immutable.js рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд░рд╛рдп рдкрдврд╝реЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдВ )ред рдЕрд▓рдЧ-рдЕрд▓рдЧ, рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЬреЗрдПрд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдПрдХ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛, рдЬрд┐рдирдХреА рд░рд╛рдп рдореИрдВрдиреЗ рдЗрдореНрдореБрдЯреЗрдмрд▓.рдЬреЗрдПрд╕ рдХреЗ рдореБрдЦреНрдп рд╣рддреНрдпрд╛рд░реЗ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦреА рдереА, рдЙрдиреНрд╣реЗрдВ рдкрд░рд┐рдгрд╛рдореА рдХреЛрдб рдХреА рд╢реБрджреНрдзрддрд╛ рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди - рдзреНрдпрд╛рди! - рдмрдврд╝рддреА рдЙрддреНрдкрд╛рджрдХрддрд╛ (рд╣рдо рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреА рддреНрд╡рд░рд┐рдд рддреБрд▓рдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ)! рдЗрд╕ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдХреБрдЫ рдЧрд▓рдд рд╣реИ рдЕрдЧрд░ рд▓реЛрдЧ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХреА рдЦрд╛рддрд┐рд░ рдЗрд╕ рд╕реНрддрд░ рдХреЗ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛ рд░рд╣реЗ рд╣реИрдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдлреИрд╢рди рдиреЗ рдлрд┐рд░ рд╕реЗ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд┐рдпрд╛ рд╣реИ ...рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рдЬреАрд╡рди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдмрд╕ рдЕрдкрдиреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдмрджрд▓рдирд╛ рдмрдВрдж рдХрд░ рджреЗрдВ, рдкреНрд░реЙрдкреНрд╕ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВ, рдФрд░ рдпреЗ рд╕рд░рд▓ рдЪреАрдЬреЗрдВ рдЕрднреА рдЖрдкрдХреЗ рдЬреАрд╡рди рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдПрдВрдЧреАред