Uibook - рдореАрдбрд┐рдпрд╛ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рджреГрд╢реНрдп рдкрд░реАрдХреНрд╖рдг рдЙрдкрдХрд░рдг


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




рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ рдФрд░ рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧ рд╣реИ


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


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


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

рдПрдирд╛рд▓реЙрдЧреНрд╕ рд╕реЗ рдХреНрдпрд╛ рдЕрд▓рдЧ рд╣реИ



рдЖрдк рдкреВрдЫ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЬрдм рддреИрдпрд╛рд░ рд╕реНрдЯреЛрд░реАрдмреБрдХ, рд╕реНрдЯрд╛рдЗрд▓рдЧрд╛рдЗрдбрд┐рд╕реНрдЯ рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреЗ рд╕рдорд╛рдзрд╛рди рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдкрд╣рд┐рдпрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рдХреНрдпреЛрдВ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рдП? рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИ рдФрд░ рдореИрдВ рддреАрди рдореБрдЦреНрдп рдЕрдВрддрд░реЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рддрд╛ рд╣реВрдВ:


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

Uibook рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рджреГрд╢реНрдп рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд╣реИ, рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЗрд╕рдХреЗ рд╕рд╛рде рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ "рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡" рднрд╛рдЧ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╡реИрд╢реНрд╡рд┐рдХ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдереЗ? рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╕рднреА рдШрдЯрдХ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВ, рд╕рднреА рдкреГрд╖реНрдареЛрдВ рдкрд░ рдЬрд╛рдПрдВред



рддрдХрдиреАрдХреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди


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


рдЪреВрдВрдХрд┐ рд╕реАрдПрд╕рдПрд╕ рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореАрдбрд┐рдпрд╛ рдХреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ, рд╣рдо рд╕рд░рд▓ рддрд░реАрдХреЗ рд╕реЗ рдЧрдП: рдШрдЯрдХ рдХреЛ <iframe> рдЕрдВрджрд░ рдкреНрд░рд╕реНрддреБрдд рдХрд░реЗрдВ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рд╕реНрдХреНрд░реАрди рдХреА рдЪреМрдбрд╝рд╛рдИ рдпрд╛ рдКрдВрдЪрд╛рдИ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рд╣реИред


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


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


 plugins: [ тАж new UibookPlugin({ controller: path.join(__dirname, '../controllers/uibook.js') }) ] 

webpack.config.js


рдпреВрдмреВрдХ рдПрдХ рдЕрд▓рдЧ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдореБрдЦреНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдЖрдХрд╛рд░ рдирд╣реАрдВ рдмрдврд╝рд╛рддрд╛ рд╣реИред рдпрд╣ SingleEntryPlugin рдХреЗ SingleEntryPlugin рдпрд╛ MultiEntryPlugin рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдХреИрд╢рд┐рдВрдЧ ("рдХреИрд╢рдмрд╕реНрдЯрд░") рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдореБрдЦреНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рд╢реИрд▓рд┐рдпреЛрдВ рдФрд░ рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ рдКрдкрд░ рдЦреАрдВрдЪрддрд╛ рд╣реИред рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдкреНрд▓рдЧрдЗрди рдХреЛ рдЖрдкрдХреА рдЬрд╝рд░реВрд░рдд рдХреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдХреИрд╕реЗ рдорд┐рд▓рддреА рд╣реИ:


  let files = compilation.chunks.find(function (i) { return i.name === 'uibook' }).files 

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


  compilation.assets[outputPath + '/index.html'] = { тАж } 

рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрднреА рднреА HtmlWebpackPlugin рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЕрдкрд╡рд╛рджреЛрдВ рдореЗрдВ рдпреВрдЗрдмреВрдХ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕реЗ рдпреВрдмреВрдХ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рдПрдЧрд╛ред



рдпреВрдмреВрдХ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ


рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ рдХреЗрд╡рд▓ рд░рд┐рдПрдХреНрдЯ, рд╡реЗрдмрдкреИрдХ рдФрд░ create-react-class рд╣реИред рдпрд╣ ES5 рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рддрдм рднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдмреИрдмрд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдФрд░ рдЕрдЧрд░ рд╣реИ, рддреЛ рдкреНрд▓рдЧ-рдЗрди рд╕рдВрдШрд░реНрд╖ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдпрджрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреБрдЫ рдЧрд▓рдд рд╣реИ, рддреЛ Uibook рдиреЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдорджрдж рдХреА рд╣реИред



Uibook рд▓рдЪреАрд▓рд╛ рд╣реИ



рдЖрдк рдЕрдкрдиреЗ рдирд┐рдпрдВрддреНрд░рдХ рдореЗрдВ рд╕рднреА рдШрдЯрдХреЛрдВ рдХреЛ рд▓рдкреЗрдЯ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ Redux, Context рдпрд╛ рд╕рднреА рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рдореЗрдВ рдПрдХ рдЖрд╡рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдирдпрд╛ рд╕рдВрджрд░реНрдн рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ:


 export default UibookStarter({ wrapper: (children, props) => <Context.Provider value={ props }> { children } </Context.Provider>, values: { locale: ['ru', 'en'], theme: ['dark', 'light'] }, тАж }) 

рд╢реАрд░реНрд╖ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдореЗрдиреВ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреБрдВрдЬреА рдФрд░ рдЙрдирдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рдПрдЧреАред


рдХреИрд╕реЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ Uibook рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП


рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдмрдЯрди рдШрдЯрдХ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬреЛ src/button.js рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИред рдЖрдкрдХреЛ uibook рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ, рдПрдХ рдлрд╝рд╛рдЗрд▓ рдирд┐рдпрдВрддреНрд░рдХ рдФрд░ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдкреГрд╖реНрда рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдлрд╝рд╛рдЗрд▓ рдирд┐рдпрдВрддреНрд░рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдкрдХреЗ рдпреВрдмреВрдХ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд╝рд╛рдЗрд▓ рдкреГрд╖реНрда "рдорд╛рдорд▓реЛрдВ" рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ, рдПрдХ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рд╕рдВрдпреЛрдЬрдиред


рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ:


1) рдЪрд▓реЛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдУ, $ yarn add uibook ;
2) рдпрд╣рд╛рдВ рдЖрдк $ npm init uibook рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдирдореВрдирд╛ рдлрд╛рдЗрд▓реЗрдВ рдмрдирд╛рдПрдЧрд╛, рдпрд╛ рдЖрдк рд╕рдм рдХреБрдЫ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдиреБрдорд╛рдирд┐рдд рд╕рдВрд░рдЪрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:


 your-project тФЬтФАтФА uibook тФВ тФЬтФАтФА button.uibook.js тФВ тФФтФАтФА uibook-controller.js тФЬтФАтФА src тФВ тФФтФАтФА button.js тФЬтФАтФА webpack.config.js тФФтФАтФА package.json 

3) рд╣рдо рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд▓рдЧрдЗрди рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ:


 let UibookPlugin = require('uibook/plugin') module.exports = { тАж plugins: [ new UibookPlugin({ controller: path.join(__dirname, '../src/uibook-controller.js'), }) ], } 

webpack.config.js


4) рд╣рдо uibook/button.uibook.js рдореЗрдВ рдкрд░реАрдХреНрд╖рдг uibook/button.uibook.js ред рдпрджрд┐ рдЖрдкрдиреЗ init рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдкрд╣рд▓реЗ рд╣реА рдмрдирд╛рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ:


 import UibookCase from 'uibook/case' import Button from '../src/button.js' const PROPS = { onClick: UibookCase.event('onClick') } const ButtonUibook = { component: Button, name: 'Button', cases: [ () => <UibookCase props={{ ...PROPS, isLarge: true }}> Large Button </UibookCase>, () => <UibookCase props={{ ...PROPS, isDisabled: true }}> Disabled Button </UibookCase> ] } export default ButtonUibook 

button.uibook.js


5) рд╣рдо рдирд┐рдпрдВрддреНрд░рдХ рдлрд╛рдЗрд▓ рдореЗрдВ рдЗрд╕ рдпреВрдЗрдмреВрдХ рдЯреЗрд╕реНрдЯ рдХреЛ рдЖрдпрд╛рдд рдФрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ:


 import UibookStarter from 'uibook/starter' import ButtonUibook from './button.uibook' export default UibookStarter({ pages: { Button: ButtonUibook, } }) 

uibook-controller.js


рем) рд╣реЛ рдЧрдпрд╛! рд╣рдо рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, $ yarn start ) рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ /uibook рдЦреЛрд▓реЗрдВред рд╣рдо рдПрдХ рдмрдЯрди рдХреЗ рд╕рд╛рде рддреАрди рдорд╛рдорд▓реЛрдВ рдХреЛ рджреЗрдЦреЗрдВрдЧреЗ (рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ /src/button.js рдШрдЯрдХ рд╣реИ, рддреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ):



рдХреИрд╕реЗ рдпреВрдмреВрдХ рдиреЗ рд╣рдорд╛рд░реА рдорджрдж рдХреА


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


рдПрдВрдбреНрд░реА рд╕реАрдЯрдирд┐рдХ рдЗрд╕реНрдХрд┐рди , рдИрд╡рд┐рд▓ рдорд╛рд░реНрдЯрд┐рдпрдВрд╕ рдореЗрдВ рдПрдХ рдЕрдЧреНрд░рдгреА рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░, рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпреВрдмреВрдХ рдПрдХ рд╢рд╛рдВрдд рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ:


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


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


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


рдПрдореНрдкреНрд▓реАрдлрд░ рдХреЗ рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░ рджрд╛рдорд┐рд░ рдореЗрд▓рдирд┐рдХреЛрд╡ рднреА рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ, рдЙрддреНрдкрд╛рджреЛрдВ рдФрд░ рд╕рдВрдкрд╛рджрдХреЛрдВ рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдкрд░ рдзреНрдпрд╛рди рджреЗрддреЗ рд╣реИрдВ:


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


рдПрдореНрдкрд▓реАрдлрд╛рдпрд░ рдХреЗ рдХрдВрдЯреЗрдВрдЯ рд▓реАрдбрд░ рдЕрд▓реЗрдХреНрдЬреЗрдВрдбрд░ рдорд╛рд░рдлрд┐рдЯрд┐рди рдиреЗ рдиреЛрдЯ рдХрд┐рдпрд╛ рдХрд┐ рдХреИрд╕реЗ рдпреВрдмреВрдХ рдиреЗ рдлреНрд░рдВрдЯ-рдПрдВрдб рдЯреЗрдХреНрд╕реНрдЯ рд▓рд┐рдЦрдирд╛ рдЖрд╕рд╛рди рдХрд░ рджрд┐рдпрд╛ рд╣реИ:


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

рдФрд░ рдХрд╛рд░реНрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рдпрдВ рдЕрдзрд┐рдХ рдкрд╛рд░рджрд░реНрд╢реА рд╣реЛ рдЧрдИ рд╣реИ - рдпреВрдмреВрдХ рдХреЗ рд╕рд╛рде рдЖрдк рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдЙрдкрдХрд░рдг рдФрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рдЕрдВрджрд░ рд╕реЗ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрддреЗ рд╣реИрдВ, рдЖрдк рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреЗ рдкрд╛рда рдХреЗ рдорд╣рддреНрд╡ рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред


тМШтМШтМШ


рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпреВрдмреВрдХ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЖрд╡реЗрджрди рдкрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ, рддреЛ рдЬреАрдердм рдкрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╡рд┐рд╕реНрддреГрдд рдирд┐рд░реНрджреЗрд╢ рджреЗрдЦреЗрдВред рдпрд╛ рдореБрдЭреЗ рдЯреНрд╡рд┐рдЯрд░ рдкрд░ рдпрд╛ рдореЗрд▓ рд╕реЗ рдИрдореЗрд▓ рдХрд░реЗрдВ ред


рдЗрд╕ рд▓реЗрдЦ рдХреЛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреЗ рд▓рд┐рдП рдЕрд▓реЗрдХреНрдЬреЗрдВрдбрд░ рдорд╛рд░рдлрд┐рдЯрд┐рди рдорд╛рд░рдлрд┐рдЯрд┐рди рдХрд╛ рдзрдиреНрдпрд╡рд╛рджред

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


All Articles