рдХреЛрдгреАрдп рдХреНрд▓рд┐ 6: рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ



рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░!

рд╕рд┐рддрдВрдмрд░ 2016 рдореЗрдВ рдХреЛрдгреАрдп рд╕рдВрд╕реНрдХрд░рдг 2.0.0 рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдФрд░ рддреБрд░рдВрдд рдЗрд╕ рдврд╛рдВрдЪреЗ рдкрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рджреГрд╖реНрдЯрд┐рдХреЛрдг рджрд┐рдЦрд╛рдИ рджрд┐рдПред рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдЖрдк рд╣рд░ рд╕реНрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рдХреЛрдгреАрдп рдмреАрдЬ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред

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

рдЫрд╣ рдорд╣реАрдиреЗ рдмрд╛рдж, рдорд╛рд░реНрдЪ 2017 рдореЗрдВ, рдХреЛрдгреАрдп рдХреНрд▓рд╕реНрдЯрд░ рд╕рдВрд╕реНрдХрд░рдг (cli - рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдЗрдВрдЯрд░рдлрд╝реЗрд╕) 1.0.0 рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдПрдХ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдпрд╣ рд╡рд┐рдЪрд╛рд░, рдмрд╕ рдЙрддреНрдХреГрд╖реНрдЯ рд╣реИ: рдПрдВрдЧреБрд▓рд░ 2+ рдкрд░ рд╡рд┐рдХрд╛рд╕рд╢реАрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдорд╛рдирдХреАрдХреГрдд рдХрд░реЗрдВ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рднреАрддрд░ рдЗрдХрд╛рдЗрдпрд╛рдВ рдмрдирд╛рдПрдВ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░реЗрдВред рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдПрдВрдЧреБрд▓рд░ рдХреНрд▓рд╛рдИ рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдЖрдкрдХреЗ рд╕рдордп рдХреА рдХрд╛рдлреА рдмрдЪрдд рдХрд░рддрд╛ рд╣реИред

рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреЛрдгреАрдп рдХреНрд▓реА 6 рдореЗрдВ рдХреИрд╕реЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдЬрд╛рдП

рдХрд╕реНрдЯрдо рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рд╛рде рд╡рд┐рдХрд╛рд╕ рдХреЗ рдХреБрдЫ рдлрд╛рдпрджреЗ рд╣реИрдВ:

  • рдЖрд╡реЗрджрди рдкрд░ рдкреВрд░реНрдг рдирд┐рдпрдВрддреНрд░рдг;
  • рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП webpack / gulp / рдЕрдиреНрдп рд╕рднреА рдЪреАрдЬреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред

рдЗрд╕рдХреЗ рдиреБрдХрд╕рд╛рди рднреА рд╣реИрдВ:

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

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

рд▓реЗрдЦрди рдХреЗ рд╕рдордп, рд╡реЗрдмрдкреИрдХ 4 рдПрдХреАрдХрд░рдг рдХреЗ рд╕рд╛рде рдЫрдард╛ рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдирд╡рд╛рдЪрд╛рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдЬрд╛рдирдХрд╛рд░реА рд╣реИ, рдореИрдВ рдХреЗрд╡рд▓ рдХреБрдЫ рд╕реБрдзрд╛рд░реЛрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░реВрдВрдЧрд╛:

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

рдореБрдЭреЗ рдХрд╣рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХреЛрдгреАрдп рдХреНрд▓реА рдХреЗ рдЫрдареЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреАрдбрд╝реЗ рд╣реИрдВред рдореИрдВ рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдКрдВрдЧрд╛ред рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЛрдгреАрдп рдХреНрд▓рд┐ рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВ, рдХреБрдЫ рд╡реЗрдмрдкреИрдХ 4 рдХреЗ рд╕рд╛рдеред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рд▓реЛрдХрдкреНрд░рд┐рдп рд╡реЗрдмрдкреИрдХ рд▓реЛрдбрд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд▓реЗрдХреНрдЯрд░ рдХреЗ рдЪреМрдереЗ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдпреЗ рдЕрд╕реНрдерд╛рдпреА рдХрдард┐рдирд╛рдЗрдпрд╛рдБ рд╣реИрдВред

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

рд╕рдВрдХреНрд░рдордг рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░реА рдХрд░ рд░рд╣рд╛ рд╣реИ


  1. рдиреЛрдб.рдЬреЗрдПрд╕ > = 8.9 рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
  2. рд╣рдо npm i -g рдХреЛрдгреАрдп / cli рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ (рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдХреЛрдгреАрдп-cli рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдЬреЛ рдПрдирдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)ред
  3. рд╣рдо рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдПрдирдЬреА рд░рди рдХрд░рддреЗ рд╣реИрдВ <рдЕрдкрдирд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо> (рдЖрдЗрдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ: рдХреЛрдгреАрдп-рдХреНрд▓реА-рдкреНрд░реЛрдЬреЗрдХреНрдЯ, рдЙрджрд╛рд╣рд░рдг рдХрдорд╛рдВрдб: рдПрдирдЬреА рдиреНрдпреВ рдХреЛрдгреАрдп-рдХреНрд▓реА-рдкреНрд░реЛрдЬреЗрдХреНрдЯ - рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдЬрд┐рд╕реЗ рдХреЛрдгреАрдп-рдХреНрд▓рд┐-рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛)ред

рддреИрдпрд╛рд░реА рдХрд╛ рдкрд░рд┐рдгрд╛рдо:



рди рдХреЗрд╡рд▓ рдХреЛрдгреАрдп рдХреНрд▓реА рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВред

рдЕрдЧрд▓рд╛, рд╣рдо рдЖрд░рд╛рдорджрд╛рдпрдХ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдмреБрдирд┐рдпрд╛рджреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд░реЗрдВрдЧреЗред

рдХреНрд▓рд┐ рд╕реЗрдЯрдЕрдк


1) рд╣рдо рдЧрд╛рдЗрдб рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдПрдЪрдПрдордЖрд░ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ (рд╣рдо рдкреГрд╖реНрда рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛ рдХреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ)ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ package.json рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рдФрд░ --open рдлреНрд▓реИрдЧ рдХреЗ рд▓рд┐рдП hmr рдЬреЛрдбрд╝реЗрдВ рддрд╛рдХрд┐ рд╣рдо рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рд╕реЛрд░реНрд╕ рдкреЗрдЬ рди рдЦреЛрд▓реЗрдВ:



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

рдП) рдЬрдм рдПрдЪрдПрдордЖрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдХреЛрдгреАрдп.рдЬреЙрди рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ

тАж "configurations": { "hmr": { "hmr": true, "fileReplacements": [{ "src": "src/environments/environment.ts", "replaceWith": "src/environments/environment.hmr.ts" }] }, тАж 

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЖрдкрдХреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА рд╣реИ:
"рд╕реНрдХреАрдорд╛ рд╕рддреНрдпрд╛рдкрди рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд░рд╣рд╛:
рдбреЗрдЯрд╛ рдкрде рдореЗрдВ "" рдЕрддрд┐рд░рд┐рдХреНрдд рдЧреБрдг рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдлрд╛рдЗрд▓рдЖрд░рдкреНрд▓реЗрдореЗрдВрдЯреНрд╕) "ред

рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдХрд░реЗрдВ:

 тАж "configurations": { "hmr": { "hmr": true, "browserTarget": "angular-cli-project:build:hmr" }, тАж 

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

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, HMR рдкрд░реНрдпрд╛рд╡рд░рдг рдХрд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рд╕реЗрд╡рд╛ рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рд╡рд╛рд╕реНрддреБрд╡рд┐рдж / рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:

 тАж "architect": { "build": { тАж "configurations": { "hmr": { "fileReplacements": [ { "src": "src/environments/environment.ts", "replaceWith": "src/environments/environment.hmr.ts" } ] }, тАж 

b) src / main.ts рдореЗрдВ ERROR рддреНрд░реБрдЯрд┐ : 'рдореЙрдбреНрдпреВрд▓' рдирд╛рдо рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: tsconfig.app.json рдореЗрдВ рд╣рдо "рдЯрд╛рдЗрдк": [] рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВред

2. рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд░ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ :

Angular.json рдореЗрдВ, рдЬреЛрдбрд╝реЗрдВ:

 тАж "projects": { тАж "prefix": "app", "schematics": { "@schematics/angular:component": { "styleext": "less" } } тАж 

рдпрджрд┐ рдЖрдкрдХреА рд╢реИрд▓рд┐рдпрд╛рдБ рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИрдВ рдФрд░ Base.less рдпрд╛ scss рдореЗрдВ рдЖрдпрд╛рдд рджреНрд╡рд╛рд░рд╛ рд╕рдВрдпреЛрдЬрд┐рдд рд╣реИрдВ, рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ .css рдлрд╝рд╛рдЗрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ "extractCss" рдЬреЛрдбрд╝реЗрдВ : angular.json рдХреЗ рд▓рд┐рдП рд╕рд╣реА :



рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдЪрдПрдордЖрд░ рдореЛрдб рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЖрдпрд╛рдд рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдпрд╛рдд рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡реИрд╢реНрд╡рд┐рдХ рдХрдо рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдЪрд▓реЗрдЧрд╛ред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдХрдо-рд▓реЛрдбрд░@3.0.0 рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ ред

3. рд╣рдо рдСрдЯреЛрдкреНрд░рд┐рдлрд╝рд░ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ ред рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдХрд┐ рдХреМрди рд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рдкреИрдХреЗрдЬ рдореЗрдВ рдЙрдкрд╕рд░реНрдЧреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ред

 тАж "browserslist": [ "last 2 versions", "IE 10", "IE 11" ], тАж 

4. gulp рдФрд░ svgstore рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдЗрдХрди рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдЬреЛрдбрд╝реЗрдВ , рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рдЪреМрдереЗ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ gulp рдЖрдЦрд┐рд░рдХрд╛рд░ рдмрд╛рд╣рд░ рдЖ рдЧрдпрд╛ред Npm i gulp@4.0.0 gulp-injection gulp-rename gulp-svgmin gulp-svgstore --SD рдЪрд▓рд╛рдПрдВ рдФрд░ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЧреБрд▓рдкрд╛рдЗрд▓ рдмрдирд╛рдПрдВред js ( рдЕрдВрддрд┐рдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреЗрдЦреЗрдВ)ред

рд╣рдо рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ - рд╕рднреА рдкреНрд░рд╢реНрди рдХреГрдкрдпрд╛, рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдЧреБрд▓рдк рдкрд░ рдирд╣реАрдВ рд░рд╣реЗрдВрдЧреЗред

SVG рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП index.html рд╕рдВрдХреЗрддрди рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ:

 <div style="height: 0; width: 0; overflow: hidden; opacity: 0;position: absolute; top: 0;left: 0;"> <!-- inject:svg --><!-- endinject --> </div> 

рдкреИрдХреЗрдЬ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ ред рдХрд╛рд░реНрдп рдПрд╕рд╡реАрдЬреА рдЬреЛрдбрд╝рдХрд░:

 тАж "scripts": { ... "svg": "gulp svg", ... тАж 

рдЕрдм рд╣рдо рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЕрдкрдиреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ SVG рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 <svg> <use href='#icon-check'/> </svg> 

5) рд╡реЗрдмрдкреИрдХ-рдмрдВрдбрд▓-рдПрдирд╛рд▓рд╛рдЗрдЬрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

рдХрдорд╛рдВрдб рдЪрд▓рд╛рдХрд░ : npm i webpack-bundle-analyzer тАУ-SD ред

Angular.json рдореЗрдВ "рдЖрдВрдХрдбрд╝реЗрдЬреЛрди" рдЬреЛрдбрд╝реЗрдВ : рд╕рдЪ :

 "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { ... "statsJson": true, ... 

рдЕрдм рд╣рдо рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдмрдВрдбрд▓ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рд╣реИред рдЗрд╕реЗ рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд░рд┐рдкреЛрд░реНрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ package.json рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ:

 тАж "scripts": { ... "report": "webpack-bundle-analyzer dist/stats.json" ... тАж 

рд╡реЗрдмрдкреИрдХ-рдмрдВрдбрд▓-рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:



рдореВрд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╕реЗрдЯ рдХрд░рдирд╛ рдкреВрд░реНрдг рд╣реЛ рдЧрдпрд╛ рд╣реИред

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

рд╣рдо рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ : npm hmr рдЪрд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ rxjs рд╕реЗ рдХреБрдЫ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдкрд╛рдВрдЪрд╡реЗрдВ рд╕реЗ рдЫрдареЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рд╣реЛ рдЧрдПред рдЕрдЧрд▓рд╛ рдЧрд╛рдЗрдб рдЙрдиреНрд╣реЗрдВ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред

рдЕрдВрддрд┐рдо рдЖрд╡реЗрджрди ред

рд╣рдо рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ: npm рд░рди рдмрд┐рд▓реНрдб рдФрд░ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:



PS рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдмрдВрдбрд▓ рдЖрдХрд╛рд░ рдЕрднреА рднреА рдХрд╛рдлреА рдмрдбрд╝рд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕рдореЗрдВ рд░реВрдЯрд┐рдВрдЧ, rxjs, рдЖрджрд┐ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреЛрдгреАрдп рдЯреАрдо рдиреЗ 2.7 Kb рдХрд╛ рдирдпрд╛ рд░реЗрдВрдбрд░ рдЗрдВрдЬрди рдЖрдЗрд╡реА рдФрд░ рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рдПрдкреНрд▓реАрдХреЗрд╢рди рдЖрдХрд╛рд░ рдХреА рдШреЛрд╖рдгрд╛ рдХреАред рдЗрд╕рдХреЗ рд▓рд┐рдП рддрддреНрдкрд░ рд╣реИрдВред

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

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


All Articles