Angular: Angular2 AOT рд╕рдВрдХрд▓рди - "рдХрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ (... рдХрдИ рдШрдЯрдХ рдЬреЛ рдЕрдкреНрд░рдпреБрдХреНрдд рд╣реИрдВ)"

рдХреЛ рдирд┐рд░реНрдорд┐рдд 20 рджрд┐рд╕ре░ 2016  ┬╖  183рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: angular/angular

[ x ] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question

рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░
рдореЗрд░реЗ рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЕрдкреНрд░рдпреБрдХреНрдд рдШрдЯрдХреЛрдВ/рдкрд╛рдЗрдкреЛрдВ/рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рд╕рдВрдХрд▓рдХ рджреНрд╡рд╛рд░рд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐ Cannot determine the module for class (...) рдлреЗрдВрдХрддрд╛ рд╣реИред рдпрд╣ рд╕рдВрдХрд▓рди рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИ, рдФрд░ рд╡рд┐рдиреНрдпрд╛рд╕ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдкрдиреЗ рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд░рд┐рдгрд╛рдореА рдРрдк рдореЗрдВ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ (рд╕рд╛рдЭрд╛ рдШрдЯрдХреЛрдВ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрдпреЛрдЬрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд╛рд▓реЗ рд╕рд╛рдЭреЗрджрд╛рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди)ред рд╡реЗрдмрдкреИрдХ рд▓реЛрдбрд░ рдореЗрдВ рд╕рдВрдХрд▓рди рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рд╣реИ, рдЬреЛ рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рд╢рд╛рдорд┐рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

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

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

  1. рдПрдХ рдмреБрдирд┐рдпрд╛рджреА рдХреЛрдгреАрдп рдРрдк рдмрдирд╛рдПрдВ рдЬреЛ рдПрдХ рдШрдЯрдХ рдХреЗ рд╕рд╛рде рдПрдХ ngModule рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрд░рддрд╛ рд╣реИ, AppComponent
  2. рдЗрд╕ рдРрдк рдХреЛ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдЬрд┐рд╕реЗ рдПрдУрдЯреА рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)
  3. рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдПрдХ рдШрдЯрдХ рдЬреЛрдбрд╝реЗрдВ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ рдХрд╣реАрдВ рднреА рд╕рдВрджрд░реНрднрд┐рдд рди рдХрд░реЗрдВред
  4. AOT рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдЖрдкрдХреЛ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓реЗрдЧреА Cannot determine the module for class

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

рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдЕрдкрдиреЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдПрдВ:
рд╕рднреА рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди рдкрд░реАрдХреНрд╖рдг рд╕реЗрдЯрдЕрдк рд╣реИ:
рд╡рд┐рдВрдбреЛрдЬ 10
рд╡реА.рдПрд╕. рдХреЛрдб
Cmder (рдмреИрд╢ рдЯрд░реНрдорд┐рдирд▓)

  • рдХреЛрдгреАрдп рд╕рдВрд╕реНрдХрд░рдг:
    v2.1.0 (рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдордиреЗ 2.3.1 . рдореЗрдВ рднреА рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ)

  • рдмреНрд░рд╛рдЙрдЬрд╝рд░: рд╕рднреА - рдпрд╣ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╣реАрдВ

  • рднрд╛рд╖рд╛: рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ

  • рдиреЛрдб (рдПрдУрдЯреА рдореБрджреНрджреЛрдВ рдХреЗ рд▓рд┐рдП): рдиреЛрдб v6.3.0
P5 compiler NgModule ve low error messages triage #1 confusing

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@DzmitryShylovich рдпрд╣ рдЙрди рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдореЙрдбреНрдпреВрд▓ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрдВрдкрд╛рдЗрд▓рд░ рдХрд╛ рд╕рд╡рд╛рд▓ рд╣реИ, рдЗрди рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдХреЛрдИ рдорд╣рддреНрд╡ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡реЗ рдЕрдкреНрд░рдпреБрдХреНрдд, рдЧреИрд░-рд╕рдВрджрд░реНрднрд┐рдд .ts рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдШрдЯрдХ рд╣реЛрддреЗ рд╣реИрдВред

рд╕рднреА 183 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдХрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛

рдШрдЯрдХ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдЗрд░рд╛рджрд╛ рд╣реИред
рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рдПрдХ рдлреАрдЪрд░ рдЕрдиреБрд░реЛрдз рд╣реИред

@DzmitryShylovich рдпрд╣ рдЙрди рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдореЙрдбреНрдпреВрд▓ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрдВрдкрд╛рдЗрд▓рд░ рдХрд╛ рд╕рд╡рд╛рд▓ рд╣реИ, рдЗрди рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдХреЛрдИ рдорд╣рддреНрд╡ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡реЗ рдЕрдкреНрд░рдпреБрдХреНрдд, рдЧреИрд░-рд╕рдВрджрд░реНрднрд┐рдд .ts рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдШрдЯрдХ рд╣реЛрддреЗ рд╣реИрдВред

@swimmadude66 рдЖрдк tsconfig . рдореЗрдВ рдЕрдкреНрд░рдпреБрдХреНрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

@DzmitryShylovich рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдмреИрд░рд▓ рдлрд╛рдЗрд▓реЗрдВ рдЗрд╕реЗ рдЬрдЯрд┐рд▓ рдмрдирд╛рддреА рд╣реИрдВред рдпрджрд┐ рдХрд┐рд╕реА рд╡рд░реНрдЧ рдХреЛ рдмреИрд░рд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреБрди: рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдмреИрд░рд▓ рдлрд╝рд╛рдЗрд▓ рдХреЛ рднреА рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рд╕реЗ рдЙрд╕ рдмреИрд░рд▓ рд╕реЗ рдореБрдЭреЗ рдЖрд╡рд╢реНрдпрдХ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред

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

рдпрд╣ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрдХрд▓рдХ рдХреЛ рдЙрд╕рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрдВрдкрд╛рдЗрд▓рд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ ...

рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЬреЗрдЖрдИрдЯреА рд╕рдВрдХрд▓рди рдХрд╛рд░реНрдп рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╕рдмреВрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╕рдВрдХрд▓рдХ рдХреЛ рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рдмрдЬрд╛рдп рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХ рд░рд╣рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдиреБрдХрд╕рд╛рди рдХреЗ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

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

рдореЗрд░рд╛ рд╕рд╣рдХрд░реНрдореА рдРрд╕реА рдХрд┐рд╕реА рднреА рдмреИрд░рд▓ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдмреНрд▓реИрдВрдХреЗрдЯ рдПрдХреНрд╕рдХреНрд▓реВрд╕рд┐рд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЖрдкрд╕реЗ рдЙрд╕ рдореБрджреНрджреЗ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реВрдВрдЧрд╛ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдореВрд▓ рд░реВрдк рд╕реЗ @ngtools/webpack рдХреЗ рд╡рд┐рд░реБрджреНрдз рдЦреЛрд▓рд╛ рдерд╛, рдЬрд╣рд╛рдВ рд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рднреА рдпрд╣реА рддреНрд░реБрдЯрд┐ рд╣реБрдИ рдереА рдПрдХ рдШрдЯрдХ рдХреЗрд╡рд▓ рдЙрдирдХреЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рд╣реИред https://github.com/angular/angular-cli/issues/3636

рдХрдВрдкрд╛рдЗрд▓рд░ рдЙрди рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рдЕрд╡рдЧрдд рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдЗрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдпрд╣ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рд╛рдкреНрдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдлреЗрдВрдХ рд░рд╣рд╛ рд╣реИред рдЙрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд╛рджрд╛ред

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

@Toxicable рдЕрдкреНрд░рдпреБрдХреНрдд рдлрд╝рд╛рдЗрд▓реЗрдВ рд▓рд╛рдЗрдмреНрд░реЗрд░реА-рд╢реИрд▓реА npm рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╣реИрдВред рдЖрдо рддреМрд░ рдкрд░ рдЖрджрд░реНрд╢ рдЙрдкрдпреЛрдЧрдХреЗрд╕ рдХреБрдЫ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ:

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

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

import {
    OverviewComponent,
    ProfileComponent
} from './components/home';

import {
    AuthComponent
} from '@project/angular';

рдпрд╣ рддрдм рдПрдУрдЯреА рдореЗрдВ рдХрд╣рддрд╛ рд╣реИ: Cannot determine the module for class OverviewComponent рдХреНрдпреЛрдВрдХрд┐ рд╣рдо @ рдкреНрд░реЛрдЬреЗрдХреНрдЯ/рдХреЛрдгреАрдп рд╕реЗ рдУрд╡рд░рд╡реНрдпреВрдХрдВрдкреЛрдиреЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдЪреВрдВрдХрд┐ рд╕рдЪрдореБрдЪ рдХреЛрдИ рдлрд╛рдЗрд▓ @project/angular/components/home/overview/component.ts рдкрд░ рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рд╕рдВрдХрд▓рдХ рд╕реЗ рдпрд╣ рдЙрдореНрдореАрдж рдирд╣реАрдВ рдХрд░рддрд╛ рдХрд┐ рдпрд╣ рдЕрдкреНрд░рдпреБрдХреНрдд рд╣реИред рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ рдлрд╝рд╛рдЗрд▓ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдбреАрдЖрдИрдЖрд░ рдХреЗ рдЕрдВрджрд░ рдореМрдЬреВрдж рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрдВрдкрд╛рдЗрд▓рд░ рдЗрд╕реЗ рдвреВрдВрдврддрд╛ рд╣реИ, рд╢рд┐рдХрд╛рдпрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдорд░ рдЬрд╛рддрд╛ рд╣реИред

рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдЬреЗрдЖрдИрдЯреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ !== рдПрдУрдЯреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдмреЗрд╕ рдРрдк рдПрдУрдЯреА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдкреНрд░реВрдл рдСрдл рдХреЙрдиреНрд╕реЗрдкреНрдЯ рдкрд╛рд░реНрдЯрдирд░ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдЫреЛрдЯреЗ рд╣реИрдВред рдореЗрд░рд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЬреЗрдЖрдИрдЯреА рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╣рд░ рдЪреАрдЬ рдПрдУрдЯреА рдореЗрдВ рдХрд╛рдо рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ рдорд╛рдирдиреЗ рдХрд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдРрд╕рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ - рдкрд░реАрдХреНрд╖рдгред
рдХрд╣реЛ, рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдлреАрдЪрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИ some-feature , рд╕рд╛рде рдореЗрдВ some-feature.component.ts рддрдерд╛ some-feature.component.spec.ts ред
рдпрд╣ рдШрдЯрдХ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдХреНрд╖реЗрдкрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЕрдкрдиреА some-feature.component.spec.ts рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдШрдЯрдХ рдмрдирд╛рдХрд░ рдЙрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рджреГрд╢реНрдп рдореЗрдВ some-feature рдШрдЯрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ:

@Component({
  selector: 'test-app',
  template: `<some-feature><p>projected content</p></some-feature>`
})
export class TestAppComponent {}

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

  ...
  beforeEach(() => {
    TestBed.configureTestingModule({
      declarations: [TestAppComponent, SomeFeatureComponent]
    })
  })
  ...

рд╕рдм рдХреБрдЫ рд╡реИрдз рдФрд░ рдмрдврд╝рд┐рдпрд╛ рд╣реИ, рдЬрдм рддрдХ рдХрд┐ рдореИрдВ рдХреЛрдгреАрдп-рдХреНрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ ng build --prod --aot рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рдЬреЛ рдлреЗрдВрдХрддрд╛ рд╣реИ:
Cannot determine the module for class TestAppComponent ред

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдПрдУрдЯреА рдХреЛ .spec рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рд╛рдорд╛рдиреНрдп рдирд┐рдпрдо рдпрд╣ рд╣реИ: ngc рд╡рд╣ рд╕рдм рдХреБрдЫ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдЧрд╛ рдЬреЛ tsc рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред рдФрд░ рдпрд╣ рд╣рд░ рдЙрд╕ рдШрдЯрдХ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдЧрд╛ рдЬреЛ рдЙрд╕реЗ рдорд┐рд▓рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреЛрдгреАрдп рд╕рдВрдмрдВрдзрд┐рдд рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд┐рдирд╛ рдШрдЯрдХреЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рдо рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред

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

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

рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рджреЗрдЦрдирд╛:

$ ./node_modules/.bin/ng-xi18n
Error: Cannot determine the module for class DividerPanel in C:/msweb/studiotouch/src/comps/dividerpanel/DividerPanel.ts!
Cannot determine the module for class EntryPanel in C:/msweb/studiotouch/src/comps/entry/EntryPanel.ts!
Cannot determine the module for class ForgotPass in C:/msweb/studiotouch/src/comps/entry/ForgotPass.ts!
Cannot determine the module for class Footer in C:/msweb/studiotouch/src/comps/footer/Footer.ts!
Cannot determine the module for class Infobox in C:/msweb/studiotouch/src/comps/infobox/Infobox.ts!
Cannot determine the module for class InputNumeric in C:/msweb/studiotouch/src/comps/inputnumeric/InputNumeric.ts!
Cannot determine the module for class InputString in C:/msweb/studiotouch/src/comps/inputstring/InputString.ts!
Cannot determine the module for class Loading in C:/msweb/studiotouch/src/comps/loading/Loading.ts!
Cannot determine the module for class MapAddress in C:/msweb/studiotouch/src/comps/mapaddress/MapAddress.ts!
Cannot determine the module for class Minitab in C:/msweb/studiotouch/src/comps/minitabs/MiniTab.ts!
Cannot determine the module for class Minitabs in C:/msweb/studiotouch/src/comps/minitabs/MiniTabs.ts!
Cannot determine the module for class ModalDialog in C:/msweb/studiotouch/src/comps/modaldialog/ModalDialog.ts!
Cannot determine the module for class Ng2Highcharts in C:/msweb/studiotouch/src/comps/ng2-highcharts/src/directives/ng2-highcharts.ts!

Cannot determine the module for class Ng2Highstocks in C:/msweb/studiotouch/src/comps/ng2-highcharts/src/directives/ng2-highstocks.ts!

Cannot determine the module for class Ng2Highmaps in C:/msweb/studiotouch/src/comps/ng2-highcharts/src/directives/ng2-highmaps.ts!
Cannot determine the module for class simplelistEditable in C:/msweb/studiotouch/src/comps/simplelist/simplelistEditable.ts!
Cannot determine the module for class simplelist in C:/msweb/studiotouch/src/comps/simplelist/simplelist.ts!
Cannot determine the module for class FilterPipe in C:/msweb/studiotouch/src/pipes/FilterPipe.ts!
Cannot determine the module for class FilterPipeEqual in C:/msweb/studiotouch/src/pipes/FilterPipeNot.ts!
Cannot determine the module for class OrderBy in C:/msweb/studiotouch/src/pipes/OrderBy.ts!
Cannot determine the module for class ReplacePipe in C:/msweb/studiotouch/src/pipes/ReplacePipe.ts!
Cannot determine the module for class SortBy in C:/msweb/studiotouch/src/pipes/SortBy.ts!
    at analyzeAndValidateNgModules (C:\msweb\studiotouch\node_modules\@angular\compiler\bundles\compiler.umd.js:24878:17)
    at Extractor.extract (C:\msweb\studiotouch\node_modules\@angular\compiler\bundles\compiler.umd.js:27727:20)
    at Extractor.extractBundle (C:\msweb\studiotouch\node_modules\@angular\compiler-cli\src\extractor.js:40:33)
    at Extractor.extract (C:\msweb\studiotouch\node_modules\@angular\compiler-cli\src\extractor.js:30:34)
    at extract (C:\msweb\studiotouch\node_modules\@angular\compiler-cli\src\extract_i18n.js:7:67)
    at Object.main (C:\msweb\studiotouch\node_modules\@angular\tsc-wrapped\src\main.js:47:16)
    at Object.<anonymous> (C:\msweb\studiotouch\node_modules\@angular\compiler-cli\src\extract_i18n.js:14:9)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
Extraction failed

root@DESKTOP-VEUHFOL /cygdrive/c/msweb/studiotouch

рдХреЛрдгреАрдп 2 рд░рд╕реЛрдИ рд╕рд┐рдВрдХ: http://ng2.javascriptninja.io
рдФрд░ рд╕реНрд░реЛрдд@ https://github.com/born2net/Angular-kitchen-sink
рд╕рд╛рджрд░,

рд╢реЙрди

i18 рдХреЛ рдкреВрд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдкрд░ рдирд╣реАрдВ рдЪрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреА рдЧрдИ рдШреЛрд╖рдгрд╛рдУрдВ рдХреЛ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореИрдВрдиреЗ рдЙрди рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рд╕рд╛рдл рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдЦрд░рдЧреЛрд╢ рдХрд╛ рдЫреЗрдж рдмрд╕ рдЧрд╣рд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ:

$ ./node_modules/.bin/ng-xi18n
Error: Error at C:/msweb/ng-skeleton/node_modules/typescript/lib/lib.d.ts:18770:11: Duplicate identifier 'ActiveXObject'.
Error at C:/msweb/ng-skeleton/node_modules/typescript/lib/lib.d.ts:18773:13: Duplicate identifier 'ActiveXObject'.
Error at C:/msweb/ng-skeleton/e2e/app.po.ts:1:38: Cannot find module 'protractor'.
Error at C:/msweb/ng-skeleton/node_modules/@angular/core/src/facade/lang.d.ts:12:17: Cannot find name 'Map'.
Error at C:/msweb/ng-skeleton/node_modules/@angular/core/src/facade/lang.d.ts:13:17: Cannot find name 'Set'.
Error at C:/msweb/ng-skeleton/node_modules/@angular/core/src/application_init.d.ts:16:18: Cannot find name 'Promise'.
Error at C:/msweb/ng-skeleton/node_modules/rxjs/Observable.d.ts:68:60: Cannot find name 'Promise'.
Error at C:/msweb/ng-skeleton/node_modules/rxjs/Observable.d.ts:68:70: Cannot find name 'Promise'.
Error at C:/msweb/ng-skeleton/node_modules/@angular/core/src/linker/compiler.d.ts:53:49: Cannot find name 'Promise'.
Error at C:/msweb/ng-skeleton/node_modules/@angular/core/src/linker/compiler.d.ts:61:65: Cannot find name 'Promise'.
Error at C:/msweb/ng-skeleton/node_modules/@angular/core/src/application_ref.d.ts:116:67: Cannot find name 'Promise'.
Error at C:/msweb/ng-skeleton/node_modules/@angular/core/src/application_ref.d.ts:132:101: Cannot find name 'Promise'.
Error at C:/msweb/ng-skeleton/node_modules/@angular/core/src/application_ref.d.ts:158:67: Cannot find name 'Promise'.
Error at C:/msweb/ng-skeleton/node_modules/@angular/core/src/application_ref.d.ts:160:101: Cannot find name 'Promise'.

рдореБрдЭреЗ рдЬреЛрдбрд╝рдиреЗ рджреЗрдВ рдХрд┐ рд╕рднреА рдХреЛрдгреАрдп-рдХреНрд▓реА рдФрд░ рдХреЛрдгреАрдп-рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд╕рд╛рде рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕рд┐рд░реНрдл i18 рд╣реИ рдЬреЛ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред

рд╕рдВрджрд░реНрдн (рдЕрдЪреНрдЫрд╛ рдФрд░ рд╕рд╛рдл рд╕реЗрдЯрдЕрдк): https://github.com/born2net/ng-skeleton

рд╕рд╛рджрд░,

рд╢реЙрди

рдЯрд┐рдкреНрдкрдгреА рдХрд┐рдП рдЧрдП рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рддреНрд░реБрдЯрд┐ .. рд╡рд┐рдХрд╛рд╕ рдЪрд░рдг рдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рдпреБрдХреНрдд рдФрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд┐рдП рдЧрдП рдШрдЯрдХ рд╕рдВрд╕рд╛рдзрд┐рдд рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧреА рдХрджрдо рд╣реИрдВ

// two comments aot read:

//  {path: 'about', component: AboutComponent 
// import { AboutComponent } from './about';

@рдХрд┐рд░рдЬрдИ рдПрдирдЬреАрд╕реА рдПрдХ рд╕реНрд░реЛрдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЕрдВрджрд░ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдЖрдпрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВред

@DzmitryShylovich рдЬрд┐рд╕реЗ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ, рдореИрдВ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдПрдУрдЯреА рдХреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕ рдлрд╛рдЗрд▓ рдХреА рдмрд┐рд▓реНрдХреБрд▓ рднреА рдкрд░рд╡рд╛рд╣ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП .. рдореЗрд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ, рдПрдУрдЯреА рд╕рдВрдХрд▓рди рдХреЗ рджреМрд░рд╛рди .spec рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рд╣реА рд░рд╛рд╕реНрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рдЯреАрдо рдХреЛ рдРрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХ рд░рд╣рд╛ рд╣реИ, рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВред

рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ, рддреЛ рд╢рд╛рдпрдж рдЙрд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдбрд╛рд▓рдиреЗ рд╡рд╛рд▓реА .spec рдлрд╝рд╛рдЗрд▓реЗрдВ, рдЬрд┐рд╕ рдЗрдХрд╛рдИ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдЙрд╕реЗ рд╕реНрдЯрд╛рдЗрд▓ рдЧрд╛рдЗрдб рджреНрд╡рд╛рд░рд╛ рд╕реБрдЭрд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдореИрдВ рднреА рд╣рдорд╛рд░реЗ рдкрд░реАрдХреНрд╖рдг рдХреЛрдб рдФрд░ рд╕рдВрдпреЛрдЬрди рдореЗрдВ рдПрдУрдЯреА рдХреЗ рдХрд╛рд░рдг рдЗрд╕ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ (рдФрд░ рдХреБрдЫ рдЕрдиреНрдп) рдореЗрдВ рднрд╛рдЧ рд▓реЗрддрд╛ рд╣реВрдВред

рдореИрдВ рдЗрд╕ рд▓реЗрдЦ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдХреИрд╕реЗ рдЙрдХрд╕рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рдареАрдХ/рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рдПред

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

(рдпрджрд┐ рдХреЛрдИ RouterLinkStubDirective рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдЙрддреНрддрд░ рдвреВрдВрдврддрд╛ рд╣реИ)
_рдЖрдк "рдбрдореА" рдореЙрдбреНрдпреВрд▓ рдЬреЛрдбрд╝рдХрд░ рдЗрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:_

/**
 * Needed so that `aot` build is working. But it isn't used throughout our tests and/or app.
 */
@NgModule({
    imports: [
        AppModule
    ],
    declarations: [
        RouterLinkStubDirective,
        RouterOutletStubComponent
    ]
})
export class FakeRouterModule {
}

рд╡реИрд╕реЗ, рдпрд╣ рдЕрдореВрд░реНрдд рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рднреА рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ:
export abstract class AsyncTransform extends AsyncPipe implements PipeTransform { ... }

"рддреНрд░реБрдЯрд┐: рдХрдХреНрд╖рд╛ AsyncTransform рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛"

рдЗрд╕реЗ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ ред
"рдПрдХ рдЕрдореВрд░реНрдд рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдкреНрд░рдХрд╛рд░ рдХреЛ рдПрдХ рдЧреИрд░-рдЕрдореВрд░реНрдд рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдкреНрд░рдХрд╛рд░ рдХреЛ рдЕрд╕рд╛рдЗрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред"

рдРрд╕рд╛ рдХреБрдЫ рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рднреА рд╣реЛ рд░рд╣рд╛ рд╣реИред

рддреНрд░реБрдЯрд┐: рдХрдХреНрд╖рд╛ AppGlobalModalComponent рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛

export class CustomGlobalModalComponent extends AppGlobalModalComponent {}

@gestj рдЬреИрд╕рд╛ рдХрд┐ @Phmager рдиреЗ рдмрддрд╛рдпрд╛, рдбрдореА рдореЙрдбреНрдпреВрд▓ рд╕рднреА рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдареАрдХ рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рд╡реЗ рдПрдХ рд╕реБрдВрджрд░ рдЬрд╛рдирджрд╛рд░ рдлрд┐рдХреНрд╕ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдЙрд╕ рдХреЛрдб рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рдЖрдк рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдпрд╛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдПрдХ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рдкреИрдЪ рдХрд┐рдпрд╛ рд╣реИред рд╣рдордиреЗ рдЕрдкрдиреЗ рд╕рд╛рдЭрд╛ рдШрдЯрдХреЛрдВ рдХреЛ рдПрдХ npm lib рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛, рдФрд░ рд╣рдорд╛рд░реЗ tsConfig рдореЗрдВ node_modules рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ред рдореИрдВрдиреЗ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрднреА рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЗрд╕рд▓рд┐рдП рдХрд┐ рд╣рдо рдмреИрд░рд▓ рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рдереЗред рдпрджрд┐ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдЧ рдХреЛ рд╕реАрдзреЗ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреЗ рдЕрдВрджрд░ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рджреВрд╕рд░реЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджреЗрдЧрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬреИрд╕реЗ рд╣реА рдЖрдк рдПрдХ рдмреИрд░рд▓ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рдЕрдкреНрд░рдпреБрдХреНрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЙрд╕реА рдмреИрд░рд▓ рдореЗрдВ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХрддрд╛ рд╣реИред

рдпрд╣ рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рдорд╛рд░реА рд╕рднреА рдЕрджреНрднреБрдд рдмреИрд░рд▓ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдирд╖реНрдЯ рдХрд░ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдЗрд╕рдХреА рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред

рдЕрднреА рднреА рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдЕрд╡рдирдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛

рдПрдВрдЧреБрд▓рд░ рдЯреАрдо рдореЗрдВ рдЕрдм рддрдХ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред
рд╣рдо рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдХреЛрдгреАрдп рдХрд╛ рднрд╛рд░реА рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЗрди рд╕рднреА buzzy Angular2+ рдЪреАрдЬреЛрдВ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЕрдкрдирд╛ рд╕рд┐рд░ рдкрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреЗ рдПрдХ рд╕рд╛рд▓ рдмрд╛рдж, рдпрд╣рд╛рдБ рдореЗрд░реА рдЦреЛрдЬ рд╣реИ:
1- рдХреЛрдгреАрдп рд╡рд┐рд╢рд╛рд▓ рдФрд░ рдзреАрдорд╛ рд╣реИ, рдЖрдк рдЗрд╕реЗ рддреЗрдЬ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? AOT рдФрд░ LazyLoading рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЕрдкрдирд╛ рд╕рд╛рдорд╛рди gzip рдХрд░реЗрдВред
2- рдЖрдк рдПрдХ рдШрдЯрдХ рдХреЛ рдЖрд▓рд╕реА рд▓реЛрдб рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдирд╣реАрдВ, рдЖрдк рдПрдХ рдЖрд▓рд╕реА рдорд╛рд░реНрдЧ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдРрдк рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд╣реИрдВ рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рдкреГрд╖реНрда рд╣реИ, рддреЛ 8mg рдмрдВрдбрд▓ рдЖрдХрд╛рд░ рдХрд╛ рдЖрдирдВрдж рд▓реЗрдВред
3- рдЖрдк AOT рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ ?? AOT рдЫреЛрдЯреА рдЧрд╛рдбрд╝реА рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдХрдард┐рди рд╣реИ рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ/es6 рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдвреЗрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИ рдФрд░ рд╢рд╛рдпрдж рдЖрдкрдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЛрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реИред
4- рдЖрдк AOT рдлрд╛рдЗрди рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдареАрдХ рд╣реИ, рдЕрдм рдЕрдкрдиреЗ рдЕрдВрддрд┐рдо рдмрдВрдбрд▓ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ, рдпрд╣ рдЕрдм @angular/compiler рд╕реЗ рднреА рдмрдбрд╝рд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдШрдЯрдХ AOTed рдирд╣реАрдВ рд╣реИрдВ, рдЕрдЪреНрдЫрд╛ рдХрд┐рдпрд╛ред

5-Angular2+ рд▓рд╛рдн рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдм рдЖрдк gzip рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдпреЛрдЧреНрдп рд╣реИрдВ, рдмрд╕ рдЕрдЧрд░ рдЖрдк рдкрд╣рд▓реЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдереЗ, рдЕрдм рдЬрдм Angular рдмрд╣реБрдд рдмрдбрд╝рд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕реЗ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рд╕реАрдЦреЗрдВрдЧреЗ :) рддреЛ рдЖрдк рд╡рд╣рд╛рдБ рдЬрд╛рдПрдБ, рд╡реЗ 'Angular2 рдХреЛрдб рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ gziping рдмреЗрдЪ рд░рд╣реЗ рд╣реИрдВ :)

@ xe4me рдХреГрдкрдпрд╛ рдврд╛рдВрдЪреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╢реЗрдЦрд╝реА рдХреЗ рдмрдЬрд╛рдп, рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдореБрджреНрджреЗ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВред

рдмрд┐рд▓реНрдб: рджреЗрд╡ рдореЗрдВ https://github.com/AngularClass/angular2-webpack-starter рдСрдЯреЛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рд░рдгреА рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдлрд╝рдВрдХреНрд╢рди рдкрд░рд┐рднрд╛рд╖рд╛ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рдмрд┐рд▓реНрдб: aot рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдРрд╕рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдмрд╛рд░-рдмрд╛рд░ AOT рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдПрдХ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓ рдЧрдпрд╛ рд╣реИ, рд╢рд╛рдпрдж рдпрд╣ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореЗрд░рд╛ рдкрд░рд┐рджреГрд╢реНрдп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдерд╛:

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ MapPipes.ts рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рджреЛ рдкрд╛рдЗрдк рд╣реИрдВред

рдореЗрд░реЗ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдПрдХ рдкрд╛рдЗрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рджреВрд╕рд░рд╛ рдирд╣реАрдВ рдерд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдореИрдВрдиреЗ рдЕрдкрдиреЗ @NgModule рдбреЗрдХреЛрд░реЗрдЯрд░ рдХреЗ "рдШреЛрд╖рдгрд╛:" рднрд╛рдЧ рдореЗрдВ рджреВрд╕рд░реЗ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ред рд╕рдорд╕реНрдпрд╛ рдЗрд╕ рд╕реЗрдХрдВрдб рд╣реБрдИред

рдореИрдВрдиреЗ рдЗрд╕реЗ рднреА рдкрдВрдЬреАрдХреГрдд рдХрд┐рдпрд╛ (рдЗрд╕рдХреЗ рдмрд╛рд╡рдЬреВрдж рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛), рдФрд░ рдЕрдм рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рдХреЛрдгреАрдп рд╕рдВрдХрд▓рдХ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрджрд▓рдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдХреЛрдгреАрдп рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдПрдХ рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ рдХреЗ рд╕рд╛рде рдорд┐рд▓ рд░рд╣реА рд╣реИ рдХрд┐ extends NgClass ред рд╡рд┐рд░рд╛рд╕рдд рдХреЛ рд╣рдЯрд╛рдиреЗ рд╕реЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЬрд╛рддреА рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдиреНрдп рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рд╣реЛрддреА рд╣реИрдВред

@DzmitryShylovich @kirjai рдпрджрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдирд┐рд░реНрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ TestComponents рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЖрдорддреМрд░ рдкрд░ рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЙрдиреНрд╣реЗрдВ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдореЗрд░реЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИред

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

@cwmrowe рдпрд╣ рдареАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╣реИ рдЬрд┐рд╕реЗ рдХрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ? рдпрд╣ рдИрдорд╛рдирджрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЯреВрдЯрд╛ рд╣реБрдЖ рд▓рдЧрддрд╛ рд╣реИред

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореИрдВ рдПрдХ рд╣реА рдХреЛрд░ рдХреЛрдгреАрдп 2 рдРрдк рдореЗрдВ 2 рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ред рдореЗрд░реЗ рдкрд╛рд╕ рд╣рдорд╛рд░реЗ рдХреНрд▓рд╛рдЗрдВрдЯреНрд╕ рдХреЗ рдирд╛рдо рдкрд░ 2 рдлреЛрд▓реНрдбрд░ рд╣реИрдВ, рдЬреИрд╕реЗ some-domain.com рдФрд░ some-other-domain.com ред рдРрдк 2 рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рд╕рдорд╛рди рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рд╕реНрдЯрд╛рдЗрд▓ рдФрд░ рдХреБрдЫ рдорд╛рдореВрд▓реА рдХрд╕реНрдЯрдо рдШрдЯрдХреЛрдВ рдореЗрдВ рднрд┐рдиреНрди рд╣реИред рдЖрдЬ рдореБрдЭреЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдП рдХреЗ рд▓рд┐рдП рдРрдк рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рдмрд╛рдж рдореЗрдВ рдореИрдВ рдХреНрд▓рд╛рдЗрдВрдЯ рдмреА рдХреЗ рд▓рд┐рдП рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдХреЛрдб рдореЗрдВ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХреЛрдб рдХреА 1 рдкрдВрдХреНрддрд┐ рдХреЛ рдмрджрд▓рдиреЗ рдЬрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИ:

import {CustomModules} from './some-domain.com';
// import {CustomModules} from './some-other-domain.com';

рдореИрдВ рдЬрд┐рд╕ рднреА рдбреЛрдореЗрди рдХреЛ рдХрдВрдкрд╛рдЗрд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдореИрдВ рдЙрд╕реЗ рдЕрдирдХрдореНрдореЗрдВрдЯ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

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

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдУрдУрдкреА рдбрд┐рдЬрд╝рд╛рдЗрди рдкреИрдЯрд░реНрди рд╕реЗ рдмрдЪрдиреЗ рдФрд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред

@jabaa рдЕрдкрдиреЗ рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ рд╕реЗ @Component рдПрдиреЛрдЯреЗрд╢рди рд╣рдЯрд╛ рджреЗрдВ

@DzmitryShylovich рдЬрдм рдореИрдВ @Component рд╣рдЯрд╛рддрд╛ рд╣реВрдВ рддреЛ рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓рддрд╛ рд╣реИред рдореБрдЭреЗ рдЕрдореВрд░реНрдд рдШрдЯрдХ рдХреЗ рдмрдЬрд╛рдп рд╕рднреА рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЛ рд╕рднреА рдШрдЯрдХреЛрдВ рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╡рд╣ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдХреЛрдб рд╣реИред рдЬрдм рдореИрдВ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдФрд░ рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ рдХреА рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдмрджрд▓рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рд╕рднреА рдмрд╛рд▓ рдШрдЯрдХреЛрдВ рдХреЛ рдЕрдкрдирд╛рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред

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

@jabaa рдЖрдк рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ? @Component рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@bigjetplane рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдХрд╣рд╛рдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ @Component рд╣рдЯрд╛рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдПрдХ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ рдХрд┐ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрд╛ред рдЬрд╣рд╛рдБ рддрдХ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ DI рдХреЗрд╡рд▓ рдХреЛрдгреАрдп рд╕рдЬреНрдЬрд╛рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рддреЛ рдЬрдм рдореИрдВ рд╕рдЬрд╛рд╡рдЯреА рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реВрдВ, рдирд┐рд░реНрднрд░рддрд╛ рдЗрдВрдЬреЗрдХреНрд╢рди рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рд╣рдо рдХреЛрдгреАрдп 4 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

@ рдЬрдмрд╛ рдХреНрдпрд╛ рдпрд╣ рдЬрд┐рдд рдпрд╛ рдПрдУрдЯреА, рдпрд╛ рджреЛрдиреЛрдВ рд╕реЗ рдЯреВрдЯрд╛ рд╣реБрдЖ рд╣реИ?

@bigjetplane рдпрд╣рд╛рдБ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рде рдкреНрд▓рдВрдХрд░ рд╣реИред рдбреЗрдХреЛрд░реЗрдЯрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ рд╣реИ рдФрд░ рд╕рдм рдХреБрдЫ рдЬрд┐рдд рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЬрдм рдЖрдк рдбреЗрдХреЛрд░реЗрдЯрд░ рдХреЛ рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ рд╕реЗ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рддреЛ рдРрдк рд░реЗрдВрдбрд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рд▓реЛрдб рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреАрдВ: Can't resolve all parameters for App: (?).

рд╡рд╣ рд╣рдорд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ und рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ рд╣реИред рд╣рдо рдХреЗрд╡рд▓ рдмрд╛рд▓ рдШрдЯрдХреЛрдВ рдореЗрдВ рдХреБрдЫ рд╕рд╛рд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ

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

@tbosch рдЗрд╕реЗ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдмрджрд▓рдиреЗ рдкрд░ рдХреЛрдИ рд╢рдмреНрдж? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдпрд╛рддреНрд░рд╛ рдХреЗ рдмрд╛рдж рд╕реЗ рдХреБрдЫ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдиреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХрд┐рд╕реНрд╕реЗ рд╕реБрдирд╛рдП рд╣реИрдВ, рдФрд░ рдореИрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рд╣рдореЗрдВ рдХреЛрдИ рдЕрдкрдбреЗрдЯ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред

рдзрдиреНрдпрд╡рд╛рдж!

рдореЗрд░рд╛ рднреА рдпрд╣реА рдореБрджреНрджрд╛ рд╣реИред

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

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

ERROR in Cannot determine the module for class FullPageErrorComponent in C:/users/amra6003/projects/git/refadmintoolui/n ode_modules/refcommonui/src/app/component-library/error/error.component.ts! Cannot determine the module for class SelectCountryComponent in C:/users/amra6003/projects/git/refadmintoolui/node_modul es/refcommonui/src/app/component-library/select-country/select-country.component.ts! Cannot determine the module for class DateRangeSelectorComponent in C:/users/amra6003/projects/git/refadmintoolui/node_m odules/refcommonui/src/app/component-library/date-range-selector/date-range-selector.component.ts!

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдФрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдирд╛ рд╣реИ :(

рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рднреА рдлрд┐рдХреНрд╕ рдмрд╣реБрдд рдорджрдж рдХрд░реЗрдЧрд╛ред

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

рдЗрд╕рд▓рд┐рдП, рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд╕реНрдЯрдм-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЖрдк рдЕрдкрдиреЗ рдШрдЯрдХ рдХреЛ рдкреНрд░рддреНрдпрдп spec.ts рдЬреИрд╕реЗ whatever.component.spec.ts рдХреЗ рд╕рд╛рде рдирд╛рдо рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ tsc рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджреЗрдЧрд╛ (рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдЗрд╕реЗ рдЖрдкрдХреЗ tsconfig рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдФрд░ рдЗрд╕рд▓рд┐рдП ngc рджреНрд╡рд╛рд░рд╛ рднреА рдЗрд╕реЗ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рддреНрд░реБрдЯрд┐ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк ngtools/webpack рдореЗрдВ рдПрдХ рдмрдЧ рд╣реИред рд╡рд╣ рдЯрд┐рдХрдЯ рдпрд╣рд╛рдВ рдЦреЛрд▓рд╛ рдЧрдпрд╛ рд╣реИ: https://github.com/angular/angular-cli/issues/6228


рдореЗрд░реА рдХрдВрдкрдиреА рдХреЗ рд▓рд┐рдП рдЗрд╕ рдореЛрд░реНрдЪреЗ рдкрд░ рдирдпрд╛ рдордЬрд╝рд╛ред рд╣рдорд╛рд░реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЛ v2.4.10 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рд╣рд╛рд▓рд┐рдпрд╛ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ, рдореБрдЭреЗ рдЗрд╕ рдХрд┐рд╕реНрдо рдХреА рдХреБрдЫ рджрд░реНрдЬрди рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓реАрдВ:

ModuleNotFoundError: Module not found: Error: Can't resolve '../../../../../../../../$_gendir/src/components/spinner/component.ngfactory'

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╣рдорд╛рд░реА рд╕рд╛рдЭрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдЙрди рд╕рднреА рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд▓реЙрдЧрд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд░реНрддрдорд╛рди рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдпрд╣ рдЙрд╕ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рдорд╛рди рд╣реА рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдореВрд▓ рд░реВрдк рд╕реЗ рдЯрд┐рдХрдЯ рдЦреЛрд▓рд╛ рдерд╛ред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдХреНрдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдордиреЗ рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЧрдП lib рд╕реЗ рд╕реАрдзреЗ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ (рдХрд┐рд╕реА рднреА index.ts рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЗрдВрдбреЗрдХреНрд╕ рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЦреАрдВрдЪрддреЗ рд╣реИрдВ) рдФрд░ рд╕рднреА рд╕рд╛рдЭрд╛ lib рдХреЛ node_modules рдореЗрдВ рд▓реЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред

рд╕рдВрдХрд▓рдХ рдХреЛ рдореЗрд░реЗ node_modules рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдХреЛрдгреАрдп рдШрдЯрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЗрд╕реЗ рдЕрдкрдирд╛ рдирдХреНрд╢рд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдкрдврд╝рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдмрд╛рдд рдХреА рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдореЙрдбреНрдпреВрд▓ рд╣реИ рдпрд╛ рдирд╣реАрдВ!

@ swimadude66 , рд╣рд╛рдБ, рд╣рдо рдЕрдкрдиреЗ https://github.com/WealthBar/a2d3 рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП рдЗрд╕рдореЗрдВ рднрд╛рдЧ рдЧрдПред рднрд▓реЗ рд╣реА рдпрд╣ рдХреЛрдИ рдЯреЗрдореНрдкреНрд▓реЗрдЯреЗрдб рдШрдЯрдХ (рд╕рд┐рд░реНрдл рдирд┐рд░реНрджреЗрд╢) рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдлрд┐рд░ рднреА рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдПрдУрдЯреА рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдпрд╣ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдПрдУрдЯреА рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред

@chrisnicola рдЖрдк рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдПрдУрдЯреА рдХреЗ рд╕рд╛рде рдкреВрд░реНрд╡-рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдЕрдкрдиреЗ рдореЙрдбреНрдпреВрд▓ рд╣реИрдВ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреНрд░рддрд┐-рд╕рд╣рдЬ рд▓рдЧрддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐, рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЕрд╕рдореНрдмрджреНрдз ts рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдлрд╛рдЗрд▓ рдХреА рддрд░рд╣ рд╣реА рдЦреАрдВрдЪрддреЗ рд╣реИрдВред рдлрд┐рд░ рдкреВрд░реА рдЪреАрдЬрд╝ рдХреЛ рд╡реЗрдмрдкреИрдХ рдореЗрдВ @ngtools/webpack рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЗрд╕ рдЯрд┐рдХрдЯ рдХреЗ рд▓рд┐рдП рдореВрд▓ рддреНрд░реБрдЯрд┐ рднреА рдХреЗрд╡рд▓ index.ts рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рднреА рд╕рдВрджрд░реНрднреЛрдВ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдХреЗ v2.1.1 рддрдХ рд╣рдорд╛рд░реА рдУрд░ рд╕реЗ "рддрдп" рдХреА рдЧрдИ рдереАред рдпрд╣ рдлрд┐рдХреНрд╕ рдЕрдм v2.4.10 рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдЖрд╣ рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдБ, рд╣рд╛рдБ рдореИрдВрдиреЗ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдкрдврд╝рд╛ред рдЖрдк рдпрд╣рд╛рдВ рдПрдирдкреАрдПрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреВрд░реНрд╡-рд╕рдВрдХрд▓рд┐рдд рд╕рд╛рдЭрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдирд╣реАрдВ рдЦреАрдВрдЪ рд░рд╣реЗ рд╣реИрдВ, рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕реНрдерд╛рдиреАрдп рдЯреАрдПрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИред рдХреНрдпрд╛ рдореИрдВ рдЕрдм рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭ рд░рд╣рд╛ рд╣реВрдБ?

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдЗрд╕реЗ "рдмрд╕ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП" рдФрд░ рдЖрдк рд╕рд╣реА рд╣реИрдВ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрд╕реА рд╕рдорд╕реНрдпрд╛ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рдЙрди рдШрдЯрдХреЛрдВ рдХреЛ рдвреВрдВрдв рд░рд╣рд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдХреЛрдИ рдореЙрдбреНрдпреВрд▓ рдирд╣реАрдВ рд╣реИред рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рдПрдХ рдПрдУрдЯреА рдмрд┐рд▓реНрдб рд╡рд┐рд╢рд┐рд╖реНрдЯ tsconfig.json рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдЙрди рдлрд╛рдЗрд▓реЛрдВ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдирдХреА рдПрдУрдЯреА рдмрд┐рд▓реНрдб рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдореИрдВ рдЗрд╕ рддреНрд░реБрдЯрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣рдорд╛рд░реА рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ рд╣реВрдВред
рдирд┐рд░реНрдпрд╛рдд рдХрд░рддреЗ рд╕рдордп рд╕рдорд╕реНрдпрд╛ (рдФрд░ рд╕рдорд╛рдзрд╛рди) рдкреНрд░рдХрдЯ рд╣реЛрддреА рд╣реИред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдШрдЯрдХ рдерд╛ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рдерд╛ред рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рддрд╛рдХрд┐ рдЗрд╕рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ - рдЗрд╕рд╕реЗ рд╣рдорд╛рд░реЗ i18n рд▓рдХреНрд╖реНрдп рдХреЛ рдЪрд▓рд╛рддреЗ рд╕рдордп рд╕рдорд╕реНрдпрд╛рдПрдБ рд╣реБрдИрдВред

рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдордиреЗ рд╕рд┐рд░реНрдл рдПрдХ рдореЙрдбреНрдпреВрд▓ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рд╣реИ (рдЗрд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдирд╛ рднреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ):

@NgModule({ declarations: [MyUnusedComponent] })
export class IgnoreModule {}

рд╣рдорд╛рд░рд╛ рдЕрдиреНрдп рдШрдЯрдХ рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рддреНрд░реБрдЯрд┐ рд╣реБрдИ, рд╡рд╣ рдПрдХ рдЕрдкреНрд░рдпреБрдХреНрдд рдШрдЯрдХ рдерд╛ рдЬрд┐рд╕рдиреЗ i18n рдХреЛ рд╣реИрдХ рдХрд░ рд▓рд┐рдпрд╛ рдерд╛ред
рдЗрд╕реЗ i18n рдЯреВрд▓ рджреНрд╡рд╛рд░рд╛ рдЙрдард╛рдП рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рдерд╛ рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдЕрдиреНрдп рдШрдЯрдХ рдХреЗ рд╕рдорд╛рди рддреНрд░реБрдЯрд┐ рд╣реБрдИред

@Component({
    template: `
        <div i18n="some context@<strong i="13">@some</strong> key">some text to be translated</div>
    `
})
export class LocalisationComponent {}

рдлрд┐рд░ рд╕реЗ IgnoreModule рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рдо рдЗрд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдмрд╛рдпрдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

@NgModule({ declarations: [LocalisationComponent] })
export class IgnoreModule {}

@UtopianStorm рдЬреЛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред рдпрд╣ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ "рдЕрдкреНрд░рдпреБрдХреНрдд рдореЙрдбреНрдпреВрд▓" рдХреЛ рд╕реНрдХреЗрд▓ рдХрд░рдирд╛ рди рдХреЗрд╡рд▓ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рдмрд▓реНрдХрд┐ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдПрдХ рд╕рдВрдкреВрд░реНрдг рдореЙрдбреНрдпреВрд▓ рднреА рдмрдирд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╡рд┐рддрд░рдг рдмрдВрдбрд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

@Phmager рдХреНрдпрд╛ рдЖрдкрдиреЗ рдХрднреА рдЕрдореВрд░реНрдд рдШрдЯрдХ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдХрд╛рд░реНрдп рдЦреЛрдЬрд╛ рд╣реИ? рдореИрдВ рдЕрдкрдиреЗ рдмрд╛рд▓ рдЦреАрдВрдЪ рд░рд╣рд╛ рд╣реВрдБред

@ swimmadude66 рдпрд╣ рдЗрд╕ рдЕрд░реНрде рдореЗрдВ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ - рд▓реЗрдХрд┐рди рдпрд╣ рддреНрд░реБрдЯрд┐ рдкрд░ рдХрд╛рдмреВ рдкрд╛рддрд╛ рд╣реИред
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕реНрдХреЗрд▓ рдХрд░рдирд╛ рдХрд┐рддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╣рд░ рдмрд╛рд░ рд╕рдорд╕реНрдпрд╛ рдЖрдиреЗ рдкрд░ рддрдХрдиреАрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

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

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

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

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

рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рд╣рдорд╛рд░рд╛ рд╕рд╛рдЭрд╛ рдХреЛрдбрдмреЗрд╕ рдХрд╛рдлреА рдмрдбрд╝рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдкреНрд░рдпреБрдХреНрдд рдореЙрдбреНрдпреВрд▓ рдРрдк рдореЗрдВ рдЕрдм рддрдХ рдХрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдореЙрдбреНрдпреВрд▓ рд╣реЛрдЧрд╛ред рд╣рдорд╛рд░реА рд╕реНрдерд┐рддрд┐ 100% рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рд╕рдорд░реНрдерд┐рдд рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдХреА рд╕реАрдорд╛ рдХреЗ рднреАрддрд░ рд╣реИред

рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рдЗрд╕ рдЯрд┐рдХрдЯ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ 5 рдорд╣реАрдиреЗ рдмрд╛рдж рдХрд╣реАрдВ рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реИ, рд╣рдо рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕рд┐рд░реНрдл рд╣рдорд╛рд░реЗ рд╕рд╛рдЭрд╛ рдХреЛрдб рд░реЗрдкреЛ рдХреЛ рдорд╛рд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ

рдореИрдВ рдареАрдХ рдЙрд╕реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреИрд╕рд╛ рдЖрдк рдХрд░рддреЗ рд╣реИрдВ, @ swimmadude66 ред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рджрдмрд╛рдиреЗ рдпреЛрдЧреНрдп рдЪреЗрддрд╛рд╡рдиреА рдирд╣реАрдВ рд╣реИ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реИред

рдкреНрд░рд┐рдп рдХреЛрдгреАрдп рдЯреАрдо, рдХреНрдпрд╛ рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

@DzmitryShylovich рдореИрдВ рдЙрд╕ mock.ts рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХреИрд╕реЗ рдирд┐рдХрд╛рд▓реВрдБ рдЬрд┐рд╕рдХрд╛ рдореИрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ? рдореИрдВрдиреЗ рдЗрд╕реЗ tsconfig.app.json , tsconfig.json , рдФрд░ tsconfig.ng-cli.json рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдФрд░ рдХреЛрдИ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рдерд╛ред

рдареАрдХ рдЙрд╕реА рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ - рд╣рдо рд░реЛрд▓рдЕрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЕрдкреНрд░рдпреБрдХреНрдд рдШрдЯрдХ рдЗрд╕реЗ рдЕрдВрддрд┐рдо рдмрдВрдбрд▓ рдореЗрдВ рднреА рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВред

рдХреГрдкрдпрд╛ рдЗрд╕реЗ рджрдмрд╛рдпреЗрдВ! рдпрд╣ рдПрдХ рдмрдбрд╝рд╛ рдЙрдкрджреНрд░рд╡ рд╣реИ, рдФрд░ рдХрд╛рдо рд░реЛрдХ рд░рд╣рд╛ рд╣реИред

рдореИрдВ рдмрд╕ рдЗрд╕рдореЗрдВ рднреА рднрд╛рдЧ рдЧрдпрд╛, рдЗрд╕рд▓рд┐рдП рдмрд╣реБрдд рдирд┐рд░рд╛рд╢рд╛ рд╣реБрдИред

@mlakmal рдФрд░ рдЕрдиреНрдп, рдЬрд┐рдиреНрд╣реЗрдВ рдХреЛрдб рдкрд░ рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ рдЬреИрд╕реЗ

export class CustomGlobalModalComponent extends AppGlobalModalComponent {}

@Component рдПрдиреЛрдЯреЗрд╢рди рдХреЛ AppGlobalModalComponent рд╕реЗ рд╣рдЯрд╛рдПрдВ рдпрд╛ NgModule рдореЗрдВ NgModule AppGlobalModalComponent (рдпрджрд┐ рдпрд╣ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ) рдШреЛрд╖рд┐рдд рдХрд░реЗрдВ

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

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

рд╡реИрд╕реЗ рднреА, рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ рдЬрд┐рдирдХрд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдирд╛рдордХрд░рдг рдкреИрдЯрд░реНрди рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП .spec.ts , .abstract.ts , .stfu-aot.ts ), рддреЛ рдЖрдк AoT рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ tsconfig.json рдлрд╝рд╛рдЗрд▓ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЙрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: ngc -p tsconfig-aot.json ред рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрдк рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "exclude": ["./app/**/*.stfu-aot.ts"] рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЙрдкрд░реЛрдХреНрдд abstract рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдПрдХ рдШрдЯрдХ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рд╡рд╛рд╣ :(

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

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдорд▓реЗ, рдЕрдкрдиреА рд╕реЗрд╡рд╛ рд╡рд░реНрдЧ рдореЗрдВ @Component рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдмрдЪреЗрдВ:

// just remove this 
@Component({
    providers: []
});
@Injectable()
export class serviceClass {}

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИ рдЬрд╣рд╛рдВ рдореИрдВ рдПрдХ рд╕реЗрд╡рд╛ рдореЗрдВ рдПрдХ рд╕реЗрд╡рд╛ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдкрд╣рд▓реЗ рдмреНрд▓рд╢ рдкрд░, рдпрд╣ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╕рд╛рди рдЪреАрдЬрд╝ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ, рдмрд╕ @Component рдЬреЛрдбрд╝реЗрдВред рдЗрд╕рд▓рд┐рдП рдЬрдЯрд┐рд▓ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЛ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдгреАрдп рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП: рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ @Component рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ред рд╕реЗрд╡рд╛ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдореЗрдВ рдореИрдВрдиреЗ рдЬреЛрдбрд╝рд╛:
constructor(@Inject(ExampleService) private exampleService: ExampleService)

рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рд╕реЗрд╡рд╛ рдореЗрдВ @Component() рдбреЗрдХреЛрд░реЗрдЯрд░ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдХреЗрд╡рд▓ @Injectable()

FWIW рдореЗрд░реЗ рдкрд╛рд╕ MockXYZComponent рд╣реИ рдЬреЛ XYZComponent рдПрдХ рдРрдк рдШрдЯрдХ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЪрд╢реНрдорд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдПрдХ рд╣реА рдЪрдпрдирдХрд░реНрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП AppModule рдореЗрдВ рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред

рдХреНрдпрд╛ рдпрд╣ рд╡реИрдз рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИ?

@ рдПрд▓рд┐рд╕реНрдЯреЗрдпрд░-рдЯреЛрдб рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИред рдпрджрд┐ рдЖрдк рдШрдЯрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдШрдЯрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдк @Component() рдбреЗрдХреЛрд░реЗрдЯрд░ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдШрдЯрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ - рдХреЗрд╡рд▓ рдЗрд╕рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓реЗрдХрд┐рди рдШрдЯрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ, рддреЛ рдЖрдкрдХреЛ рдбреЗрдХреЛрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ "рдЙрддреНрддрд░рд╛рдзрд┐рдХрд╛рд░реА" рдкрд░ рдбреЗрдХреЛрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЙрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдпреВрдирд┐рдЯ-рдкрд░реАрдХреНрд╖рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ - рдореИрдВ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛, рд╢рд╛рдпрдж рдЖрдкрдХреЛ рд╡рд┐рд╢реЗрд╖ рдЯреЗрд╕реНрдЯ рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ? рдореИрдВ рдлрд┐рд▓рд╣рд╛рд▓ рдпреВрдирд┐рдЯ-рдЯреЗрд╕реНрдЯрд┐рдВрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВред

@tytskyi рдореИрдВ рд╕рдордЭ рдЧрдпрд╛ рдХрд┐ рдбреЗрдХреЛрд░реЗрдЯрд░ рдЗрдирд╣реЗрд░рд┐рдЯреЗрдВрд╕ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рдерд╛ред рдХреНрдпрд╛ рд╡рд╣ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛?

рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓рд╛ рдиреАрдЪреЗ рдЙрдк-рдШрдЯрдХ рдХрд╛ рдирдХрд▓ рдХрд░рдирд╛ рд╣реИред рдЪрдпрдирдХрд░реНрддрд╛ рдХреЛ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рджреЛрдиреЛрдВ рдХреЛ @Component рдирд┐рд░реНрджреЗрд╢ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

    beforeEach(() => {
        TestBed.configureTestingModule({
            imports: [
                AppModule
            ]
        }).overrideModule(AppModule, {
            remove: {
                declarations: [SelectionToolComponent]
            },
            add: {
                declarations: [MockSelectionToolComponent]
            }
        }).compileComponents();

рдлрд┐рд░ рднреА рдпрд╣ рдУрдкреА рдПрдУрдЯреА рд╕рдВрдХрд▓рди рддреНрд░реБрдЯрд┐ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред

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

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

рдореБрдЭреЗ рдХрд┐рд╕реА рднреА рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред

рдпрд╣ рдЗрддрдирд╛ рдЕрдЬреАрдм рдФрд░ рд╢рд░реНрдордирд╛рдХ рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рджрд┐рд╕рдВрдмрд░ 2016 рдореЗрдВ рдЦреЛрд▓рд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЕрднреА рднреА рдпрд╣ рдореБрджреНрджрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкреВрд░реЗ рдРрдк рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдПрдУрдЯреА рд╕рдВрдХрд▓рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░ рджрд┐рдпрд╛ред рдореЗрд░реЗ рдкрд╛рд╕ 4 рдореЙрдбреНрдпреВрд▓ рд╣реИрдВ рдЬреЛ рдЖрд▓рд╕реА рд▓реЛрдбреЗрдб рд╣реИрдВ рдФрд░ 60 рд╕реЗ рдЕрдзрд┐рдХ рдШрдЯрдХ рд╣реИрдВред рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗрд╡рд▓ рдХреБрдЫ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╢рд┐рдХрд╛рдпрдд рдХрд░рддрд╛ рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ рддреНрд░реБрдЯрд┐ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ) рдЬреЛ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдЖрд▓рд╕реА рд▓реЛрдб рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╕реЗ рдПрдХ рдХреА рдШреЛрд╖рдгрд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдЕрдЬреАрдм рд╣реИред

рдпрд╣ рдЙрди рдШрдЯрдХреЛрдВ рдкрд░ рднреА рддреНрд░реБрдЯрд┐рдпрд╛рдВ рджреЗ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдЫ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИрдВред

рд╡рд╣реА рдореБрджреНрджрд╛

рдПрдВрдЧреБрд▓рд░ рдХрд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ tsconfig рдХреЛ рд╕реМрдВрдкреЗ рдЧрдП рдлрд╝рд╛рдЗрд▓ рд╕реЗрдЯ рдХреЛ рджреЗрдЦрддрд╛ рд╣реИ - рдЗрд╕рд▓рд┐рдП рд╡рд╣рд╛рдВ рд╕реЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдЪреЗрдХ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИ :(

@ alastair-todd рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореИрдВрдиреЗ рдХрдИ рдЕрдиреНрдп рдЕрдзрд┐рд╕реВрдЪрдирд╛рдУрдВ рдореЗрдВ рдЖрдкрдХреЗ рдкреНрд░рд╢реНрди рд╕реЗ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдЦреЛ рджреА рд╣реИред рддреБрдо рд╕рд╣реА рд╣реЛ -
рдбреЗрдХреЛрд░реЗрдЯрд░ рдЗрдирд╣реЗрд░рд┐рдЯреЗрдВрд╕ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИред

@robwormald . рд╕реЗ рдЙрддреНрддрд░ рджреЗрдЦреЗрдВ

рдПрдВрдЧреБрд▓рд░ рдХрд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ tsconfig рдХреЛ рд╕реМрдВрдкреЗ рдЧрдП рдлрд╝рд╛рдЗрд▓ рд╕реЗрдЯ рдХреЛ рджреЗрдЦрддрд╛ рд╣реИ - рдЗрд╕рд▓рд┐рдП рд╡рд╣рд╛рдВ рд╕реЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдЪреЗрдХ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

рддреЛ рдЖрдк рдирдХрд▓реА рдлрд╝рд╛рдЗрд▓ рдирд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдореНрдореЗрд▓рди рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ: selection-tool.component.mock.ts ред рдлрд┐рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░реЗрдВ

"exclude": [
    //... other excludes
    "**/*.component.mock.ts"
]

рдЧрд▓рддреА рд╕реЗ рдЧрд▓рдд рдмрдЯрди рдХреНрд▓рд┐рдХ рдХрд░ рджрд┐рдпрд╛, рдХреНрд╖рдорд╛ рдХрд░реЗрдВ!

+8 рдорд╣реАрдиреЗ рдФрд░ рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИред рдпрд╣рд╛рдБ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ ERROR in Cannot determine the module for class PasoFooterComponent

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдгреАрдп рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред

рдЕрдЧрд░ рдХреЛрдИ рдореБрдЭреЗ рд╕реБрдЭрд╛рд╡ рджреЗ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдпрд╣ рдХреЛрдб рдХрд╣рд╛рдВ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЦреБрд╢реА рд╣реЛрдЧреА
рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣ рдПрдХ рдРрд╕рд╛ рдЙрдкрджреНрд░рд╡ рд╣реИ рдЬреЛ рдмрд╣реБрдд рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред рдЗрд╕рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛
рдХрд▓ рдлрд┐рд░ред

рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ рдФрд░ рдмрдЧ рдирд╣реАрдВ рд╣реИ, рддреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЭрдВрдбрд╛ рдХреИрд╕реЗ рд╣реИ
рдЗрд╕рдХреЗ рд▓рд┐рдП?

рдмреБрдзрд╡рд╛рд░, 9 рдЕрдЧрд╕реНрдд 2017 рдХреЛ рджреЛрдкрд╣рд░ 2:40 рдмрдЬреЗ, рд▓рд┐рдпреЛрдирд╛рд░реНрдбреЛ рд╡рд┐рдбрд╛рд▓ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:

+8 рдорд╣реАрдиреЗ рдФрд░ рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИред рдпрд╣рд╛рдБ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ Cannot . рдореЗрдВ ERROR
PasoFooterComponent рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/angular/angular/issues/13590#issuecomment-321082545 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AEM6r7FOTLcicWJN3Oijw2pwKTLGL6cFks5sWM61gaJpZM4LSAwS
.

@samirotiv рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдкреНрд░рдЬрдирди рд╣реИ?
рдЬреИрд╕рд╛ рдХрд┐ @robwormald рдиреЗ рдХрд╣рд╛

рдПрдВрдЧреБрд▓рд░ рдХрд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ tsconfig рдХреЛ рд╕реМрдВрдкреЗ рдЧрдП рдлрд╝рд╛рдЗрд▓ рд╕реЗрдЯ рдХреЛ рджреЗрдЦрддрд╛ рд╣реИ - рдЗрд╕рд▓рд┐рдП рд╡рд╣рд╛рдВ рд╕реЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдЪреЗрдХ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдереА рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ред рдореИрдВрдиреЗ рдЕрднреА рджреЗрдЦрд╛ рдХрд┐ рдХреИрд╕реЗ ts рдореЗрд░реЗ рдРрдк рдХреЛ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд░рддрд╛ рд╣реИ

"tsc": "rimraf out-tsc/app && tsc -p ./src/tsconfig.app.json",

рдФрд░ рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдиреЗ рдореЗрд░реЗ рдЖрд▓рд╕реА рд▓реЛрдб рдХрд┐рдП рдЧрдП рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ "рдлрд╛рдЗрд▓" tsconfig рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛

рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ (рд╕рдЬреНрдЬрд╛рдХрд╛рд░реЛрдВ рдХреЗ рдмрд┐рдирд╛) рдкрд░ рдорд┐рд▓ рд░рд╣реА рд╣реИ

рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЗрд╕реА рдореБрджреНрджреЗ рдореЗрдВ рднрд╛рдЧрдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ред

рддреНрд░реБрдЯрд┐ рдХреЛ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП +1ред

рдПрдХ рдЖрд╕рд╛рди рдлрд┐рдХреНрд╕ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред рджреЗрд░реА рдХреНрдпреЛрдВ?

рдпрд╣ рдПрдХ рдмреБрдирд┐рдпрд╛рджреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдЧреИрд░-рд╕рдВрджрд░реНрднрд┐рдд рдлрд╝рд╛рдЗрд▓реЗрдВ рдЫреЛрдбрд╝ рджреЗрдВред
рдпрд╣ рдкреНрд░рддрд┐рдмрдВрдз рдмрдбрд╝реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдмрджрд▓реЗрдВред

рдРрд╕реЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрдм рдЖрдк рдПрдХ рдкреИрдХреЗрдЬ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдХреЛрдгреАрдп рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗ рдЙрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХреЛ рдЪреБрдирдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХреА рдЬрд╛рддреА рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдкреИрдХреЗрдЬ рдЬреЛ HttpClient (рдХреЛрдгреАрдп >= 4.3 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛) рдФрд░ Http (рдХреЛрдгреАрдп <4.3 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛) рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓реЗрдВ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ

рд╡рд░реНрддрдорд╛рди рдореЗрдВ, ngc рдпрд╛ рддреЛ рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рд╕реНрд░реЛрдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЕрдВрджрд░ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЪрд╛рд╣реЗ рдЖрдк рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдпрд╛ рдирд╣реАрдВ! рдпрд╛ рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЬреЛ рдХрд┐рдпрд╛ рд╡рд╣ рдпрд╣ рдерд╛:

рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд╕рднреА рд╕реНрдЯрдм / рдирдХрд▓реА рдШрдЯрдХреЛрдВ рдХреЛ .mock.ts рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рд╕рд╣реЗрдЬрд╛ рд╣реИ рдФрд░ tsconfig.app.json "рдмрд╣рд┐рд╖реНрдХреГрдд" рд╕рд░рдгреА рдХреЛ рдЗрд╕ рддрд░рд╣ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ:

...
  "exclude": [
    "test.ts",
    "**/*.spec.ts",
    "**/*.mock.ts"
  ]
...

рдПрдУрдЯреА рдЕрдм рдЗрди рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рдВрдХрд▓рди рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ

рд╣рдо рд╕рд╛рдорд╛рдиреНрдп рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде npm рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ AoT рд╕рдВрдХрд▓рди рдХреЗ рджреМрд░рд╛рди рдЙрд╕ рдореБрджреНрджреЗ рд╕реЗ рдирд╛рд░рд╛рдЬ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓рд╛рдирдд рд╣реИ ... рдХреЗрд╡рд▓ рд╕рдорд╛рдзрд╛рди рдПрдЯреАрдПрдо рд╣реЛрд╕реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ UnusedComponentsModule рдХреА рддрд░рд╣ рдмрдирд╛рдирд╛ рд╣реИ - рдмрд╕ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж! рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ NO_ERRORS_SCHEMA рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рдпрд╣ рдЕрдиреНрдп рдШрдЯрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╕рдо рдЦрд╛рдПрдЧрд╛ рдЬреЛ рдЖрдкрдХреЗ рдЕрдкреНрд░рдпреБрдХреНрдд рдШрдЯрдХреЛрдВ рдХреЗ рдЕрдВрджрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрджрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдШреЛрд╖рд┐рдд рдХрд░реЗрдВрдЧреЗ, рддреЛ рдЖрдк рдПрдХ рдФрд░ рдореБрджреНрджрд╛ рдорд╛рд░рд╛ рдЬрд╣рд╛рдВ рдЖрдк рджреЛ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдПрдХ рд╣реА рдШрдЯрдХ рдШреЛрд╖рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ (рд╕рдВрдмрдВрдзрд┐рдд # 10646)ред

рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рдореЙрдбреНрдпреВрд▓:

import {NgModule, NO_ERRORS_SCHEMA} from '@angular/core';
import {CommonModule} from '@angular/common';
import {ReceiverPageComponent} from 'cb-web-platform';

@NgModule({
  imports: [
    CommonModule,
  ],
  declarations: [
    ReceiverPageComponent
  ],
  schemas: [
    NO_ERRORS_SCHEMA // IMPORTANT: need that for AoT compilation
  ]
})
export class UnusedComponentsModule {
}

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдПрдХ рдХреЛрдбрдмреЗрд╕ рднреА рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдШрдЯрдХреЛрдВ рдХреЗ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдПрдХ ngmodule рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИред
рдпрд╣рд╛рдВ рд╕рдорд╕реНрдпрд╛ рдмрд┐рд▓реНрдХреБрд▓ рдЕрдкреНрд░рдпреБрдХреНрдд рдЪрд░ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ рдЬреЛ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реИ; рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдпрд╣ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реИред

рдпрд╣ рдЖрд╕рд╛рди рд╣реИ рдЬрдм рдпрд╣ рдЖрдкрдХрд╛ рдХреЛрдб рд╣реИред рдЬрдм рдпрд╣ рдХреБрдЫ рдПрдирдкреАрдПрдо рдХреЛрдгреАрдп рдкреБрд╕реНрддрдХрд╛рд▓рдп (рдХреБрдЫ рдореГрдд рдХреЛрдб) рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЧрдзреЗ рдореЗрдВ рджрд░реНрдж рд╣реИ :)

рдХреНрдпрд╛ рдХреЛрдИ рд╕рдордЭрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рддреНрд░реБрдЯрд┐ рдХреЗ рдмрдЬрд╛рдп рдЪреЗрддрд╛рд╡рдиреА рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВ рдХреЗрд╡рд▓ рдЙрди рдШрдЯрдХреЛрдВ рд╕реЗ рд▓реИрдВрдЧ рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ ngModule рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВ рдФрд░ рдЬреЛ рдирд╣реАрдВ рд╣реИрдВ рдЙрдиреНрд╣реЗрдВ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВред рдореЗрд░реЗ рдкрд╛рд╕ рдЖрдзрд╛рд░ рдШрдЯрдХреЛрдВ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдореБрдЦреНрдп рдРрдк рдлрд╝реЛрд▓реНрдбрд░ рд╣реИ рдЬреЛ рдХрднреА-рдХрднреА рдореБрдЦреНрдп рдРрдк рд╕реЗ рдШрдЯрдХреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реИ рдЬрдм рдореИрдВ xi18n рдХреЗ рд╕рд╛рде рдРрд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдШрдЯрдХ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ Cannot determine the module for class... рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рд╕рд┐рд░реНрдл рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдирд┐рд╖реНрдХрд░реНрд╖рдг рдЙрд╕ рдЕрдкреНрд░рдпреБрдХреНрдд рдШрдЯрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдЬрд╛рд░реА рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

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

@Xesenix рдХрдо рд╕реЗ рдХрдо рдпрд╣ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬреИрд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдореЙрдбреНрдпреВрд▓ = рдЭреВрдард╛/рд╕рддреНрдпред рдЕрдм рдпрд╣ рдХреЗрд▓реЗ рд╣реИрдВред

рдореИрдВ 11/1/2017 рдХреЛ рд╡рд╛рдкрд╕ рдЖрдКрдВрдЧрд╛ред

рдореЗрд░реЗ рд▓реМрдЯрдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВ рдЖрдкрдХреЗ рд╕рдВрджреЗрд╢ рдХрд╛ рдЙрддреНрддрд░ рджреВрдВрдЧрд╛ред
рдЕрддреНрдпрд╛рд╡рд╢реНрдпрдХ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ рдИрдореЗрд▓ рдХреА рдПрдХ рдкреНрд░рддрд┐ рднреЗрдЬреЗрдВ
[email protected] рдкрд░ рддрдХрдиреАрдХреА рдорд╛рдорд▓реЗ, рдЕрдиреНрдпрдерд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
[email protected]ред рдлрд┐рд░ рджреВрд╕рд░рд╛ рдХрд░реНрдордЪрд╛рд░реА рдЖрдкрдХрд╛ рдИрдореЗрд▓ рджреЗрдЦреЗрдЧрд╛
рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВред

рдиреЛрдЯ: рдпрд╣ рдЖрдкрдХреЗ "рдкреБрдирдГ:" рдХрд╛ рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрддреНрддрд░ рд╣реИред
[рдХреЛрдгреАрдп/рдХреЛрдгреАрдп] Angular2 AOT рд╕рдВрдХрд▓рди - "рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛
рдХрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП (... рдХрдИ рдШрдЯрдХ рдЬреЛ рдЕрдкреНрд░рдпреБрдХреНрдд рд╣реИрдВ)" (#13590)" рдХреЛ рднреЗрдЬрд╛ рдЧрдпрд╛
10/23/2017 08:13:17ред

рдпрд╣ рдПрдХрдорд╛рддреНрд░ рд╕реВрдЪрдирд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЗрд╕ рд╕рдордп рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧреА
рд╡рд╣ рд╡реНрдпрдХреНрддрд┐ рдЕрдиреБрдкрд╕реНрдерд┐рдд рд╣реИред

рдпрд╣ рд▓рдЧрднрдЧ 1 рд╕рд╛рд▓ рдмрд╛рдж рднреА рдХреИрд╕реЗ рддрдп рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ? рдПрдУрдЯреА рдХреЛ рдХрд╛рдо рдкрд░ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдмрд╛рд▓реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рдирд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдореБрджреНрджрд╛ рдореБрдЭреЗ рдПрдХ рдИрдВрдЯ рдХреА рджреАрд╡рд╛рд░ рд╕реЗ рдЯрдХрд░рд╛рддрд╛ рд╣реИред

рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП @ rahul-sivalenka-wtc рдзрдиреНрдпрд╡рд╛рдж!
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рд╣реИ, рдореИрдВ рдЕрдкрдиреЗ tsconfig.app.json рдореЗрдВ "**/*.mock.ts" рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред

рдЦреБрд╢реА рд╣реИ рдХрд┐ рдореИрдВ рдорджрдж рдХрд░ рд╕рдХрд╛

рдореИрдВ рднреА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдорд┐рд▓рд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд▓рд┐рдП рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдбреЛрдбреБрд▓реЗ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХрд╛ рдорд╛рд░реНрдЧ рд░рдЦрд╛ рд╣реИ

рдХреЛрдИ рдЙрдкрд╛рдп? (рдШрдЯрдХ рдХреЛрдгреАрдп 5 рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛)

https://stackoverflow.com/questions/47119135/cannot-determine-the-module-for-component-angular-5

рдпрд╣ рд╢рд╛рдпрдж severity3: broken рджреНрд╡рд╛рд░рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рдордореЗрдВ рд╕реЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдХрдИ рдирд┐рд░реНрдорд╛рдг рд▓рдХреНрд╖реНрдп рдФрд░ рдмрд╣реБрд░реВрдкреА рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рд╣реИрдВ (рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХрдИ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдКрдкрд░ рдореМрдЬреВрдж рд╣реИрдВ) рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдПрдХ рдкрд╛рдЧрд▓ рдЬрдЯрд┐рд▓ рдирд┐рд░реНрдорд┐рдд рд╕реЗрдЯрдЕрдк рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддреА рд╣реИред

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд┐рдП рдЕрднреА рддрдХ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди? рдЗрдЧреНрдиреЛрд░ рдореЙрдбреНрдпреВрд▓ рд╕рд┐рд░реНрдл рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ рд▓реЗрдХрд┐рди рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред рддреНрд░реБрдЯрд┐ рдХреЛ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдмрджрд▓рдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛!

рд╣рдорд╛рд░рд╛ рд╕рдорд╛рдзрд╛рди transform рдлрд╝рдВрдХреНрд╢рди рдХреЛ @ngtools/webpack рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдерд╛ рдЬреЛ рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрдХрд▓рди-рд╕рдордп рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ ifdef рдЖрдИрдПрдирдЬреА рдШрдЯрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдмрд╣реБрдд, рдмрд╣реБрдд рдмрджрд╕реВрд░рдд, рд▓реЗрдХрд┐рди рдХрд╛рд░реНрдпрд╛рддреНрдордХред

рд╕рднреА рдХреЛрдгреАрдп рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдкрд╣рд▓реЗ app.module.ts рдореЗрдВ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рдлрд┐рд░ рдШрдЯрдХреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░реЗрдВред

` ---------------- рдкреНрд░рдердо рдЖрдпрд╛рдд рдирд┐рд░реНрднрд░рддрд╛ рдореЙрдбреНрдпреВрд▓ -----------------------
'@ рдХреЛрдгреАрдп/рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо-рдмреНрд░рд╛рдЙрдЬрд╝рд░' рд╕реЗ { BrowserModule } рдЖрдпрд╛рдд рдХрд░реЗрдВ;
{CommonModule } рдХреЛ "@angular/common" рд╕реЗ рдЗрдВрдкреЛрд░реНрдЯ рдХрд░реЗрдВ;
'@angular/core' рд╕реЗ { NgModule } рдЖрдпрд╛рдд рдХрд░реЗрдВ;
'@angular/router' рд╕реЗ {RouterModule, Routes} рдЖрдпрд╛рдд рдХрд░реЗрдВ;
рдЖрдпрд╛рдд { HttpModule } '@angular/http' рд╕реЗ;
'@angular/forms' рд╕реЗ {ReactiveFormsModule} рдЖрдпрд╛рдд рдХрд░реЗрдВ;
'@ рдХреЛрдгреАрдп/рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо-рдмреНрд░рд╛рдЙрдЬрд╝рд░/рдПрдирд┐рдореЗрд╢рди' рд╕реЗ { BrowserAnimationsModule } рдЖрдпрд╛рдд рдХрд░реЗрдВ;

-------------рдлрд┐рд░ рдЖрдпрд╛рдд рд╕реЗрд╡рд╛ рдореЙрдбреНрдпреВрд▓ ------------------------

рдЖрдпрд╛рдд { ApplyFormPostService } './Services/apply-form-post.service' рд╕реЗ;
рдЖрдпрд╛рдд { NavBarColorService } './Services/nav-bar-color.service' рд╕реЗ;

----------------------- рдЕрдВрдд рдореЗрдВ рдЖрдпрд╛рдд рдШрдЯрдХ рдореЙрдбреНрдпреВрд▓ ------------------------ -

рдЖрдпрд╛рдд {AppComponent} './app.component' рд╕реЗ;
рдЖрдпрд╛рдд { HeaderComponent } './components/header/header.component' рд╕реЗ;
рдЖрдпрд╛рдд { CareerComponent } './components/career/career.component' рд╕реЗ;
рдЖрдпрд╛рдд { HomeComponent } './Components/home/home.component' рд╕реЗ;`

рдХрд┐рд╕реА рддрд░рд╣ рдЗрд╕рдиреЗ рдПрдУрдЯреА рд╕рдВрдХрд▓рди рддреНрд░реБрдЯрд┐ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рдлреЗрдВрдХрдирд╛ рдХрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ --- рдЙрддреНрдкрд╛рджрди рдореЛрдб рдореЗрдВ

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

рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЗрд╕реЗ рдПрдХ рд╡рд░реНрд╖ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд░реЛрдбрдореИрдк рдкрд░ pri_col1 рд╕реЗ pri_col2 рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

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

рдХреЛрдгреАрдп рдЯреАрдо, рдпрджрд┐ рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдФрд░ рднреА рдкрдврд╝рддреЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ "ignoreUnusedComponents" рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рд╕реЗрдЯрд┐рдВрдЧ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рд╣рдореЗрдВ рдЗрд╕ рдврд╛рдВрдЪреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рджреЗрдВред

рдареАрдХ рд╣реИ, рдореБрдЭреЗ рдЬрдЧрд╣ рдорд┐рд▓реА https://github.com/angular/angular/blob/master/packages/compiler/src/aot/compiler.ts#L605 @tbosch рдЕрд░реЗ, рдХреНрдпрд╛ рдЖрдк рдпрд╣рд╛рдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдП рдареАрдХ рд╕реЗ рдЪреЗрддрд╛рд╡рдиреА рд╣реЛ? рдЙрд╕ рдПрдУрдЯреА рдХрдВрдкрд╛рдЗрд▓рд░ рдореЗрдВ рдлреЗрдВрдХреА рдЧрдИ рдХреЛрдИ рдЪреЗрддрд╛рд╡рдиреА рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддрд╛, рдХреЗрд╡рд▓ рддреНрд░реБрдЯрд┐рдпрд╛рдВред рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХрдВрдкрд╛рдЗрд▓рд░ рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╡рд╣ рдореБрджреНрджрд╛ рдЬрдЯрд┐рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рдПрдХ рджрд░реНрдж рд╣реИред рдореЗрд░рд╛ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рд╣реИ https://github.com/angular/angular/issues/13590#issuecomment -331820496

рд╣рдорд╛рд░рд╛ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓рд╛ рд╡рд╣реА рд╣реИред рд╣рдо рдРрдкреНрд╕ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓/рдШрдЯрдХреЛрдВ рдХреА рдПрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЬрд░реВрд░рдд рдкрдбрд╝рдиреЗ рдкрд░ рдЕрдЬреАрдм рд▓реЛрдЧреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ/рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд░рдЦрддреЗ рд╣реИрдВред

рд╣рдореЗрдВ рджреВрд╕рд░реА рддрд░рд╣ рд╕реЗ рднреА рд╕рдорд╕реНрдпрд╛рдПрдВ рдЖ рд░рд╣реА рд╣реИрдВ: рдпрджрд┐ рд╣рдо рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЕрдВрджрд░ 1x рдШрдЯрдХ рдХреЛ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдПрдХ рдирдпрд╛ рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЙрди рдШрдЯрдХреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╣рдо рдЕрднреА рднреА рд╡рд╣рд╛рдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:

import { HeaderComponent, SidebarComponent } from '@mylibs/layout';
import { FooterComponent } from './footer.component';

@NgModule({ declarations: [ HeaderComponent, SidebarComponent, FooterComponent ] })
export class MyLayoutModule { }

@NgModule({ imports: [ MyLayoutModule ] })
export class AppModule { }

рддреНрд░реБрдЯрд┐ рд╣реИ: `HeaderComponent 2 рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: lib/module.ts рдФрд░ app/module.ts
рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реЛрдиреЗ рд╕реЗ рд╣рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓реЗрдЧреА :(

рдЕрднреА рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ - рдЗрд╕ рдЕрдВрдХ рдХреЗ рд▓рд┐рдП рдЬрдиреНрдорджрд┐рди рдореБрдмрд╛рд░рдХ рд╣реЛ :)

рдПрдХ рд╕рд╛рд▓ рдмрд╛рдж, рдФрд░ рд╣рдо рдЕрднреА рднреА рдЗрд╕реЗ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддреЗред рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрджред

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

рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдареАрдХ рдХрд░реЗрдВред рдЗрд╕реЗ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдмрдирд╛рдУ!
рдХреЛрдгреАрдп 5 рдПрдУрдЯреА рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рдореЗрд░рд╛ рд╕рд╛рдорд╛рдиреНрдп рдЕрдиреБрднрд╡ рддрд╛рд░рдХреАрдп рд╕реЗ рдХрдо рд╣реИред

рдХреБрдЫ рдЪрд░реНрдЪрд╛ рдХреЗ рдмрд╛рдж https://gitter.im/angular/angular?at=5a551f565a9ebe4f756843b2 рд╣рдо рдЗрд╕ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪреЗ рдХрд┐ рд╣рдореЗрдВ рдкреНрд░рддрд┐ рдореЙрдбреНрдпреВрд▓ рдПрдХ рдШрдЯрдХ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рд╕рд┐рд░реНрдл рд╕рдВрдХрд▓рди рд╕рдВрджрд░реНрдн рд╣реИ рдФрд░ рдПрдХ рд╕рд╛рде рд╕рд╛рдорд╛рди рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред .

рдпрд╣ рдПрдХ рдЗрддрд┐рд╣рд╛рд╕ рдХреА рдХрд┐рддрд╛рдм рдХрд╛ рдЖрдХрд╛рд░ рд▓реЗ рд░рд╣рд╛ рд╣реИред

@Xesenix ... рд╕рдВрджрд░реНрдн рдФрд░ рд╕рдВрдЧрдарди рдкреВрд░реЗ рдХреЗ 2 рднрд╛рдЧ рд╣реИрдВред

рдмрд╕ рдЕрдЧрд░ рдХреЛрдИ рдЕрднреА рднреА рдЗрд╕рдХреЗ рд╕рд╛рде рдлрдВрд╕ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкреЛрд╕реНрдЯ-рдЗрдВрд╕реНрдЯреЙрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

const replace = require('replace-in-file');
const filesToFix = [
    {
        files: 'node_modules/@angular/compiler/esm2015/compiler.js',
        from: ['throw syntaxError(messages.join(\'\\n\'));'],
                // Actually this does nothing , just leave it blank should do
        to: [`console.warn(\'Angular compiler warning\');\n\t\tconsole.warn(messages.join(\'\\n\'));`]
    }
]

filesToFix.forEach((i) => {
    try {

        const changes = replace.sync(i);
        if (changes.length > 0) {
            console.log('Modified files:', changes.join(', '));
        }
    }
    catch (error) {
        console.error('Error occurred:', error);
    }
});

рдХреЛрдгреАрдп рд╕рдВрдХрд▓рдХ tsconfig рд╕реЗ рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП _tsconfig.app.json_ рдмрджрд▓реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ
рдЬреИрд╕реЗ
"exclude": [ "test.ts", "**/*.spec.ts", "**/*.mock.component.ts", ]

@ andela-andrewmakenzi рдпрд╣ рдкрд╣рд▓реЗ рднреА рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕ рд╡рд┐рд╢рд╛рд▓ рдЪреИрдЯ рдореЗрдВ рдЖрдЧреЗ (рдкреВрд░реА рдмрд╛рдд рдХреЛ рди рдкрдврд╝рдиреЗ рдореЗрдВ рдХреЛрдИ рд╢рд░реНрдо рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ)ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рдорд╕реНрдпрд╛рдПрдБ рд╕рд╛рдордиреЗ рдЖрддреА рд╣реИрдВ рдпрджрд┐ рдЖрдк рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдПрдХ рдШрдЯрдХ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдмреИрд░рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ (index.ts) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдмреИрд░рд▓ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдХреЛрдИ рдШрдЯрдХ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдВрдХрд▓рдХ рдЙрд╕ рдмреИрд░рд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рд╕рднреА рдШрдЯрдХреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╢рд┐рдХрд╛рдпрдд рдХрд░реЗрдЧрд╛ рдХрд┐ рд╡реЗ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕рд╕реЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдШрдЯрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдкреИрдХреЗрдЬ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рдШрдЯрдХ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд╛ рд╕рдВрдкреВрд░реНрдг рдмрд┐рдВрджреБ рд╣реИред

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

@ andela-andrewmakenzi: рдЖрдкрдХрд╛ рд╕реБрдЭрд╛рд╡ рдЕрднреА рдХреЗ рд▓рд┐рдП рдорджрдж рдХрд░рддрд╛ рд╣реИ, рдкрд╣рд▓реЗ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдпреВрдирд┐рдЯ рдЯреЗрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдШрдЯрдХ рд╣реИ (.spec) рдФрд░ рдореИрдВ рдЗрд╕реЗ рдПрдУрдЯреА-рдмрд┐рд▓реНрдб (рдФрд░ рд╢рд╛рдпрдж рдХреБрдЫ рдирдХрд▓реА рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ) рдореИрдВ рдЗрд╕реЗ рдЕрдкрдиреЗ рдкреНрд░рдХреНрд╖реЗрдкрдг рдореЗрдВ рд░рдЦрдирд╛ рднреА рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛) рд╢рд╛рдпрдж рдЗрд╕реЗ рдХрд┐рд╕реА рддрд░рд╣ рдХреЛрдгреАрдп рдХреЗ рдмрд╛рдж рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ :)

рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рдорд╛рдорд▓рд╛ рдпрд╣ рдерд╛ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдмрд╣реБрдд рд╕реЗ рдирдП рдШрдЯрдХ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ NgModule рдореЗрдВ рднреА рд╕рдВрджрд░реНрднрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдЕрднреА рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдирд╛рдо рд╕рдореНрдореЗрд▓рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЙрдиреНрд╣реЗрдВ tsconfig.json рдореЗрдВ рдмрд╛рд╣рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдХрд┐ рдлрд┐рд▓рд╣рд╛рд▓ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрдЦрдж рдирд╣реАрдВ рд╣реИ

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

рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП NgModule ред рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ NgModule рдмрдирд╛рдирд╛ рдЗрддрдирд╛ рдбрд░рд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИред (рдЬреИрд╕реЗ @angular/material рдиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛)

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЖрднрд╛рд╕реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рд╣рдо рдХреЛрдИ рдХрд╛рд░рдг рднреА рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреБрдЫ рднреА рдЖрдзрд╛ рд╣реА рдХреНрдпреЛрдВ рд╣реИред NgModule рдирд╣реАрдВ, рдкреИрдХреЗрдЬ рдирд╣реАрдВ, рдРрдк рдЯреНрд░реА рдХреЗ рдмрд╛рд╣рд░ рдирд╣реАрдВ ... рдХреБрдЫ рдРрд╕рд╛ рдЬреЛ рдбреЗрдб рдХреЛрдб рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред

рддреЛ рдирдП @ рдХреЛрдгреАрдп/рдХреНрд▓реА (1.7.0+) рдХреЗ рд╕рд╛рде рднреА IgnoreModule рдХрд┐рд╕реА рднреА рддрд░рд╣ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ NgModule рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП

рдХреНрдпрд╛ рдЖрдк рдпреВрдирд┐рдЯ-рдЯреЗрд╕реНрдЯ рд▓рд┐рдЦрдиреЗ рдХреА рднреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ? рдпрд╣ рдмрдЧ рдЯреЗрд╕реНрдЯ рд╣реЗрд▓реНрдкрд░реНрд╕ рдХреЛ рдереЛрдбрд╝рд╛ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдмрдирд╛ рд░рд╣рд╛ рд╣реИред

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

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

@dborisenkowork рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ (рдпрд╛ рдпрджрд┐ рдпрд╣ рдЖрдкрдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ) рд▓реЗрдХрд┐рди рд╕рдорд╛рдзрд╛рди @ rahul-sivalenka-wtc рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдХреНрдпрд╛ рдХрд┐рд╕реА рдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХреЛрдгреАрдп 4 рд╕реЗ рдХреЛрдгреАрдп 5 рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдХреБрдЫ рдШрдЯрдХ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдлреЗрдВрдХ рд░рд╣реЗ рд╣реИрдВ?

@ novologic-рдорд┐рдЯреНрдЯреА рдХреНрдпрд╛ рддреНрд░реБрдЯрд┐? рдзрд╛рдЧрд╛ рд▓рдВрдмрд╛ рд╣реИ, рдХреНрдпрд╛ рдЖрдк рдореВрд▓ рддреНрд░реБрдЯрд┐ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ
Angular2 AOT рд╕рдВрдХрд▓рди - "рдХрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ (... рдХрдИ рдШрдЯрдХ рдЬреЛ рдЕрдкреНрд░рдпреБрдХреНрдд рд╣реИрдВ)" ?

@ andela-andrewmakenzi рд╣рд╛рдБ рдФрд░ рдирд╣реАрдВред рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдореБрджреНрд░рд┐рдд рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЬрд┐рд╕ рдШрдЯрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд╣ рд╢рд┐рдХрд╛рдпрдд рдХрд░ рд░рд╣рд╛ рд╣реИ рд╡рд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред рдореИрдВ 4.3.6 рд╕реЗ 5.2.4 рдкрд░ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдореБрдЭреЗ рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рдпрд╣ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣реА рдереА рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдХреЛрдгреАрдп рдХреЗ рдЕрдкрдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдерд╛, рдФрд░ рдореИрдВрдиреЗ рдзреВрдореНрд░рдкрд╛рди рдкрд░реАрдХреНрд╖рдг рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдареАрдХ рдкрд╣рд▓реЗ 4.3.6 рдкрд░ рдПрдУрдЯреА рд╕рдВрдХрд▓рди рдХрд┐рдпрд╛ рдерд╛ред .

@ рдиреЛрд╡реЛрд▓реЙрдЬрд┐рдХ-рдХреНрд▓реЗ рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреА рдХрдВрд╕реЛрд▓ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

... рдЕрдВрддрд┐рдо рд▓рдХреНрд╖реНрдп tsconfig.json рд╡рд┐рдХрд▓реНрдк "noUnusedLocals": true рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЕрдкреНрд░рдпреБрдХреНрдд рд╕рдм рдХреБрдЫ рд╕рдорд╛рдкреНрдд рдХрд░ рджреЗрддрд╛ рд╣реИред

@andela-andrewmakenzi

ERROR in : Cannot determine the module for class InlineAddComponent in /Users/claygarland/CatalsytConnect/frontend/Talon/src/app/core/component/input/inline-add/inline-add.component.ts! Add InlineAddComponent to the NgModule to fix it.

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

**COMPONENT:**
import {Component, Inject, Input} from '@angular/core';
import {MAT_DIALOG_DATA, MatDialogRef} from '@angular/material';
import {ActivatedRoute} from '@angular/router';
import {BaseForm} from '../../form/form/BaseForm';
import {FormDataService, FormDataServiceProvider} from '../../form/form/FormDataService';
import {BaseApi} from '../../../api/BaseApi';

@Component({
    selector: 'inline-add',
    templateUrl: './inline-add.component.html',
    styleUrls: ['./inline-add.component.scss'],
    providers: [
        FormDataServiceProvider
    ]
})
export class InlineAddComponent extends BaseForm {

    @Input() title = 'Entity';
    @Input() formName;

    protected service: BaseApi;

    constructor(
        protected route: ActivatedRoute,
        protected formDataService: FormDataService,
        public dialogRef: MatDialogRef<InlineAddComponent>,
        @Inject(MAT_DIALOG_DATA) public data: {
            form: string,
            title: string,
            service: BaseApi,
        },
    ) {
        super();
        this.title = data.title;
        this.formName = data.form;
        this.service = data.service;
    }

    submit() {
        super.onSubmit(res => {
            this.dialogRef.close(res.data[0]);
        });

    }

    onCancel() {
        this.dialogRef.close(false);
    }

}

**MODULE:**
import { NgModule } from '@angular/core';
import {SharedModule} from '../../../shared/shared.module';
import {InlineAddComponent} from './inline-add/inline-add.component';


@NgModule({
    imports: [
        SharedModule,
    ],
    declarations: [
        InlineAddComponent,
    ],
    exports: [
        InlineAddComponent,
    ],
    entryComponents: [
        InlineAddComponent,
    ]
})
export class FormInputsModule { }

рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЬрдм рдореИрдВ рдЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдПрдирдЬреА рд╕рд░реНрд╡ рдореЗрдВ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рддреЛ рдШрдЯрдХ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдХрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдШрдЯрдХреЛрдВ рдХреЗ рдкрд░реАрдХреНрд╖рдг рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдирдХрд▓реА рдШрдЯрдХ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП; рд╡реЗ рд╕рд┐рд░реНрдл рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП рдЧрдП рдШрдЯрдХреЛрдВ рдХреЗ рдЯреЗрд╕реНрдЯрдмреЗрдб рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
рдпрд╣ рддреНрд░реБрдЯрд┐ рдмреЗрд╡рдХреВрдлреА рд╣реИред рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдПрдХ рд╡рд░реНрд╖ рдХреЗ рджреМрд░рд╛рди рд╣рд▓ рдХрд░реЗрдВред

"рдирд┐рд░реНрдпрд╛рдд" рдХреЛ рд╣рдЯрд╛ рджреЗрдВ рддрд╛рдХрд┐ ts рдЗрд╕реЗ рдмрд┐рд▓реНрдб рдореЗрдВ рди рд▓реЗ рдЬрд╛рдПред

@ рдЯреЛрдиреА-рдХрдкреНрд▓рд╛рди рдЖрдк рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ tsconfig рдореЗрдВ рдХреЛрдИ рдЕрдкреНрд░рдпреБрдХреНрдд рд╕реНрдерд╛рди рдирд╣реАрдВ рд╣реИ, рдФрд░ рди рд╣реА рдпрджрд┐ рдЖрдк рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЛрдВ рдпрд╛ рдЗрд╕реА рддрд░рд╣ рдХреЗ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдорд╛рдИ рдЧреЙрдб.... рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрд░ рдЯреАрдо рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдХреЛ рднреА рдЗрд╕рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓рд╛?
рдореИрдВ рдЕрднреА рдХреЗ рд▓рд┐рдП exclude рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдпрд╣ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╕рдорд╛рдзрд╛рди рд╣реИред рдореИрдВ рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪ рд╕рдХрддрд╛ рдЬреЛ рд╕рднреА рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░реЗ... рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреА рдЬрд░реВрд░рдд рд╣реИ...

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

рдУрд╣ рдпрд╛рд░! рдПрдХ рдЙрджреНрдпрдо рдврд╛рдВрдЪреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ ...

@ рдкрд░рдорд╛рдгреБ-рдореЙрд░реНрдЧрди рдЖрдк рдХрд┐рд╕ рдХрд╛рдордХрд╛рдЬ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ "рдХрдХреНрд╖рд╛ рдбреЗрдЯрд░реЗрдВрдЬрдкрд┐рдХрд░ рдбрд╛рдпрд░реЗрдХреНрдЯрд┐рд╡ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛" рддреНрд░реБрдЯрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛?

рдХреЛрдИ рдореЗрд░реА рднреА рдорджрдж рдХрд░рддрд╛ рд╣реИ? рдЗрд╕ рдореЗрдЧрд╛рдЬрд╝реЙрд░реНрдб рдкреЛрд╕реНрдЯ рдХреЗ рдмрд╛рдж!

рдореИрдВ рдЗрд╕ рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ tsconfig.app.json рдирдпрд╛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣рдордд рдирд╣реАрдВ рд╣реВрдВ! рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдмрд┐рдирд╛ --aot param рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

рдореЗрд░рд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ https://github.com/angular/angular/issues/23475
рдореИрдВ рд╕рддреНрдпрд╛рдкрдирдХрд░реНрддрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕рддреНрдпрд╛рдкрдирдХрд░реНрддрд╛ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд╣реАрдВ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛, рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдХреЗрд╡рд▓ рдПрдирдкреАрдПрдо рдкреИрдХреЗрдЬ рдореЗрдВ рд╕рддреНрдпрд╛рдкрдирдХрд░реНрддрд╛ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдмрдВрдбрд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗрд╡рд▓ рдЙрди рд╕рддреНрдпрд╛рдкрдирдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдЖрдпрд╛рдд рдХрд░ рд╕рдХреЗ рдЬрд┐рдирдХреА рдЙрдиреНрд╣реЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ NgModuleред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рд╕рднреА рд╕рддреНрдпрд╛рдкрдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓ рдирд╣реАрдВ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╕рднреА рдЕрдВрддрд┐рдо рдмрдВрдбрд▓ рдореЗрдВ рдмрдВрдбрд▓ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ рдЬреЛ рдЖрдХрд╛рд░ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдЕрдкрд╢рд┐рд╖реНрдЯ рд╣реИред

рдореБрдЭреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ рдмрдирд╛рдХрд░ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИред

@anjmao рдпрд╣ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдЙрд╕реА рдХрд╛рд░рдг рд╕реЗ рд╣реИ рдЬреИрд╕рд╛ рдореИрдВрдиреЗ рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рдЦреЛрд▓рд╛ рдерд╛ред рдПрдХ рдЫреЛрдЯреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдордиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдпрджрд┐ рдЖрдк рдмреИрд░рд▓ (index.ts) рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рддреНрд░реБрдЯрд┐ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рд╕реЗ 1 рдШрдЯрдХ/рдирд┐рд░реНрджреЗрд╢ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдиреНрдп рд╕рднреА рдирд┐рд░реНрдпрд╛рддреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓ рдЦреЛрдЬрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред

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

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

import { NgModule } from '@angular/core';

@NgModule({
    imports: [],
    declarations: [
        MyComponent,
        MyPipe,
        MyDirective,
        ...
    ],
})
export class DummyModule {
}

рдХреНрдпрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдордиреЗ рдЕрднреА рднреА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ?

рдХреНрдпрд╛ "рдЗрд╕реЗ рдЪреЗрддрд╛рд╡рдиреА рджреЗрдВ" рд╕рдорд╛рдзрд╛рди рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ? рдХреНрдпрд╛ рдХреЛрд░ рдЯреАрдо рдХрд╛ рдХреЛрдИ рд╕рджрд╕реНрдп рдЗрд╕ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЪреАрдЬреЗрдВ рдЬрд╣рд╛рдВ рдПрдирдЬреА 5, рд╕реАрдПрд▓рдЖрдИ рдФрд░ рдПрдУрдЯреА рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реИрдВред рд▓реЗрдХрд┐рди рдПрдирдЬреА 6 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдЕрдкреНрд░рдпреБрдХреНрдд рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИред рдЕрд╕рд▓ рдореЗрдВ рдХрдВрдкреЛрдиреЗрдВрдЯ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рджреВрд╕рд░реЗ рдХрдВрдкреЛрдиреЗрдВрдЯ рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХреА рдЧрдИ рд╕рд░реНрд╡рд┐рд╕ рдХреЗ рдЬрд░рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдХрдИ рд╕рдорд╛рди рдШрдЯрдХреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдЙрд╕реА рддрд░рд╣ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рдХреЛ рдирд╡реАрдирддрдо рдПрдирдЬреА рд╕реАрдПрд▓рдЖрдИ 6.0 рдФрд░ 6.0.1 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реИ

рдФрд░ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рд╕рдВрджрд░реНрдн рдореЗрдВ рдирд┐рдХрд▓рд╛, рдореЗрд░реЗ рдкрд╛рд╕ рдЧрд▓рдд рдорд╛рдорд▓реЗ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рд╕рдВрджрд░реНрдн рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕рднреА рдШрдЯрдХреЛрдВ рдХреЛ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ index.ts рд╣реИред рдореИрдВрдиреЗ рд▓рд┐рдпрд╛
export * from './dateTimePicker.component'
рдЬрдмрдХрд┐ рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛:
рдирд┐рд░реНрдпрд╛рдд * './datetimePicker.component' рд╕реЗ;

рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдПрдирдЬреА рд╕реАрдПрд▓рдЖрдИ 6 рд╡рд┐рдВрдбреЛрдЬрд╝ рдореЗрдВ рднреА рдХреЗрд╕рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рд╣реИ, рдЬрдмрдХрд┐ рдПрдирдЬреА рд╕реАрдПрд▓рдЖрдИ 1.x рдереЛрдбрд╝рд╛ рдЖрд░рд╛рдорджреЗрд╣ рд╣реИред
рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдРрд╕рд╛ рдкреНрд░рддрд┐рдмрдВрдз рдЕрдЪреНрдЫрд╛ рдФрд░ рд╕рд╣реА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡рд╣реА рдХреЛрдбрдмреЗрд╕ рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреЗрд╕ рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд╣реЛрддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛:

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдкрдХреЛ paths рдЪрд░ рдХреЗ рд╕рд╛рде tsconfig.json рдореЗрдВ рдХрдИ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдкрде рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рднреВрддрдкреВрд░реНрд╡:

{
    ...
    "paths": {
        "~src/*": ["src/*", "src-gen/*"]
    }
}

рдЖрдкрдХреЛ рдЗрд╕ рддрд░рд╣ рдХреА рдЪреАрдЬреЗрдВ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐:

import { NgModule } from "@angular/core";
import { ExampleComponent } from "~src/example.component";

@NgModule({
    declarations: [
        ExampleComponent
    ],
})
export class ExampleModule {}

рдпрджрд┐ рдЖрдк src-gen рдХреЗ рдЕрдВрджрд░ рдПрдХ рдШрдЯрдХ рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдбреЗрд╡рд▓рдкрд░ src рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдЕрдВрджрд░ рдПрдХ рдФрд░ рдПрдХ рдмрдирд╛рдХрд░ "рдУрд╡рд░рд░рд╛рдЗрдб" рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рд╡рд╣реА рддреНрд░реБрдЯрд┐ src-gen рдХреЗ рдЕрдВрджрд░ (рдЕрдм рдЕрдкреНрд░рдпреБрдХреНрдд) рдШрдЯрдХ рдХреЗ рд╕рд╛рде рд╣реЛрдиреЗ рд▓рдЧрддреА рд╣реИ

рдПрдХ рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛:

рдкрд░реНрдпрд╛рд╡рд░рдг рд╡рд┐рд╢рд┐рд╖реНрдЯ рдШрдЯрдХред рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдЙрддрд╛рд░ рджреЗрддрд╛ рд╣реВрдВред

const environmentComponents = production ? [] : [
  DevOnlyComponent,
];

@NgModule({
  declarations: [
    ...environmentComponents,
  ],
})
export class ExampleModule {
}

рдореИрдВ рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдкрд░реНрдпрд╛рд╡рд░рдг рд╡рд┐рд╢рд┐рд╖реНрдЯ рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ рдФрд░ рдпрд╣реА рдореБрдЭреЗ рд░реЛрдХрддрд╛ рд╣реИред рдореИрдВ

рдирд┐рд░реНрдорд╛рдг рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдПрдХ рддрдВрддреНрд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╕рдордп рд╣рдореЗрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИ (рд╡рд┐рднрд┐рдиреНрди рдХреЛрдгреАрдп рд╕реАрдПрд▓рдЖрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдШрдЯрдХреЛрдВ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ) рдЬреЛ @tiagodws (рдореВрд▓ рдШрдЯрдХ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рд╕рд╣рд┐рдд) рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рдкрд░рд┐рджреГрд╢реНрдп рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред

рдХреНтАНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХрд┐рд╕реА рдХреЛрд░ рдЯреАрдо рдХреА рдХреЛрдИ рдЕрдкрдбреЗрдЯ/рд░рд╛рдп рд╣реИ?

рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреЛрд▓рдиреЗ рдХреЗ рдПрдХ рд╕рд╛рд▓ рдмрд╛рдж, рдореЗрд░рд╛ рдирдпрд╛ рддрд░реАрдХрд╛ рдмреИрд░рд▓ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдХрдо рдХрд░рдирд╛ рд╣реИред рдпрджрд┐ рдЖрдк рд╣рд░ рдЬрдЧрд╣ рдЕрдкрдиреЗ рдЖрдпрд╛рдд рдореЗрдВ ~components/button/component рдЬреИрд╕реЗ TS рдкрдереЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЕрдкреНрд░рдпреБрдХреНрдд рдЖрдпрд╛рддреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЙрд╕ рдЕрдкреНрд░рдпреБрдХреНрдд рдШрдЯрдХ рдХреЛ рдмреИрд░рд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдлреЗрдВрдХ рджреЗрдЧрд╛ред

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

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

рдирдХрд▓реА рдкрд╛рдЗрдк рдХреЗ рд▓рд┐рдП рдмрд╣рд┐рд╖реНрдХреГрдд рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ:

@Pipe({ name: 'translate' })
export class MockTranslatePipe implements PipeTransform {
    transform(value: string): string {
        //Do stuff here, if you want
        return value;
    }
}

рдореЗрд░реЗ tsconfig.app.json рдиреЗ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрд╛рд╣рд░ рдХрд░ рджрд┐рдпрд╛ рд╣реИ:

"exclude": [
        "test.ts",
        "**/*.mock.ts",
        "**/*.spec.ts"
    ]

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬрдм рдореИрдВ ng-xi18n --i18nFormat=xlf2 --outFile=./assets/i18n/messages.xlf рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рддрдм рднреА рдпрд╣ рд╢рд┐рдХрд╛рдпрдд рдХрд░рддрд╛ рд╣реИ:

src/test/translate.service.mock.ts рдореЗрдВ рдХреНрд▓рд╛рд╕ MockTranslatePipe рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛! рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП NgModule рдореЗрдВ MockTranslatePipe рдЬреЛрдбрд╝реЗрдВред

рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдпрд╣ рдереА рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рд▓реЙрд▓ рдХреЛ рдХреЙрдкреА рдФрд░ рдкреЗрд╕реНрдЯ рдХрд░рдХреЗ 2 рдЕрд▓рдЧ-рдЕрд▓рдЧ рдШрдЯрдХреЛрдВ рдореЗрдВ рдПрдХ рд╡рд░реНрдЧ рдХрд╛ рдирд╛рдо рдерд╛! рдмрд╛рдж рдореЗрдВ рдкрд░рд╡рд╛рд╣ рди рдХрд░рдиреЗ рдХреА рд╡рд╣реА рдЧрд▓рддреА рдЕрдЪреНрдЫреЗ рдЕрднреНрдпрд╛рд╕ рд╕реЗ рдкрд░рд┐рдкреВрд░реНрдг рд▓реЛрдЧ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ! рд╣рд┐рдЯ...
рд╣рд╕реНрддрд╛рдХреНрд╖рд░: рд╕рддреЛрд╢реА рдирд╛рдХрд╛рдореЛрддреЛ: v

@yuezhizizhang рдХреЗ рд╕рдорд╛рди, рдореБрдЭреЗ рдЕрднреА рднреА рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реИ, tsconfig.app.json exclude рдкрде рдореЗрдВ рдореЛрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЧреНрд▓реЛрдм рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж рднреАред

рдпрд╣ рдЧреБрд╕реНрд╕реЗ рдореЗрдВ рд╣реИ рдХрд┐ рд╢реБрд░реБрдЖрддреА рдЯрд┐рдХрдЯ рдХреЗ рд▓рдЧрднрдЧ рджреЛ рд╕рд╛рд▓ рдмрд╛рдж рдЗрд╕реЗ рд╣рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ; рдпрд╣ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓рд╛ рд╣реИ рдЬреЛ BREAKING рдмрдирд╛рддрд╛ рд╣реИред рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦрддреЗ рд╕рдордп, рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдкрд╛рдЗрдк, рд╕реЗрд╡рд╛рдУрдВ рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рдореЙрдХ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрдм рддрдХ рдХрд┐ рдРрд╕рд╛ рди рд╣реЛред рдпрджрд┐ рдЖрдк рдРрд╕рд╛ рдХрд░рдирд╛ рдЪреБрдирддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХрд╛ рдирд┐рд░реНрдорд╛рдг рдЯреВрдЯ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЖрдкрдХреА рдХрд▓реНрдкрдирд╛ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдШрдЯрдХреЛрдВ/рдкрд╛рдЗрдк/рдЖрджрд┐ рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрддреА рд╣реИрдВ рдЬреЛ рдмрд╣реБрдд рдХрд╕рдХрд░ рдпреБрдЧреНрдорд┐рдд рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддреА рд╣реИрдВред

рдХреНрдпрд╛ рдПрдВрдЧреБрд▓рд░ рдЯреАрдо рдХрд╛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдХреГрдкрдпрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдП? рдХреНрдпрд╛ рдореЛрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдХреИрдЪ-рдСрд▓ рдбрдореА рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИ? рдпрд╣ рдПрдХ рдЦрд░рд╛рдм рд╣реИрдХ рд╣реИ, рдмрдЬрд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рд╣рдореЗрдВ рд╕рд░реНрд╡реЛрддреНрддрдо рдЕрднреНрдпрд╛рд╕ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рдорд╕реНрдпрд╛ рдмрд░рдХрд░рд╛рд░ред рдореИрдВрдиреЗ рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рднреА рдЬреЛрдбрд╝рд╛ рдЬрд┐рд╕реЗ рдореИрдВ рдмрд┐рд▓реНрдб (рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ) рдХреЛ tsconfig.app.json рдХреЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЫреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рдЕрднреА рднреА рдорд┐рд▓рддрд╛ рд╣реИ:

MapElementBaseComponent .../map-elements/map-element-base.component.ts рдореЗрдВ рд╡рд░реНрдЧ MapElementBaseComponent рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛! рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП NgModule рдореЗрдВ MapElementBaseComponent рдЬреЛрдбрд╝реЗрдВред

рдЖрдпрд╛рдд рдХреА рджреЛрд╣рд░реА рдЬрд╛рдБрдЪ рдХреЗ рдмрд╛рдж рдореБрдЭреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдорд┐рд▓ рдЧрдпрд╛ рд╣реИ

рдкреАрдЖрд░, 14 рдирд╡рдВрдмрд░ред 2018 рдордИ, 15:13 рдбреЗрдирд┐рдпрд▓ рдЧреНрд░реЛ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com :

рд╕рдорд╕реНрдпрд╛ рдмрд░рдХрд░рд╛рд░ред рдореИрдВрдиреЗ рд╡рд╣ рдлрд╝рд╛рдЗрд▓ рднреА рдЬреЛрдбрд╝реА рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рдмрд┐рд▓реНрдб рдЫреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ
(рд╕рд╛рд░ рд╡рд░реНрдЧ) tsconfig.app.json рдФрд░ I . рдХреЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдЕрдиреБрднрд╛рдЧ рдореЗрдВ
рдлрд┐рд░ рднреА рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:

рдореЗрдВ рд╡рд░реНрдЧ MapElementBaseComponent рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛
.../map-elements/map-element-base.component.ts! MapElementBaseComponent рдЬреЛрдбрд╝реЗрдВ
рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП NgModule рдкрд░ред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/angular/angular/issues/13590#issuecomment-438641324 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AQb6kpWdkakUF8JVvea8Hy42tAnTKTuzks5uvAjvgaJpZM4LSAwS
.

рдЬрдм рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдЦреНрдд, рдПрдУрдЯреА рд╕рдВрдХрд▓рди рдореЗрдВ рдХреЛрдгреАрдп рдЖрдпрд╛рдд, рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рд▓реИрдВрдЪрд┐рдВрдЧ рдХрд░рддрд╛ рд╣реИ ... рдЧреИрд░-рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдШрдЯрдХреЛрдВ/рдореЙрдбреНрдпреВрд▓ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ рдЧреИрд░ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ ...

image

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

рдпрд╣ рддреНрд░реБрдЯрд┐ рдмрд┐рд▓реНрдХреБрд▓ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдерд╛ рдЬреЛ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдШрдЯрдХреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЬреИрд╕реЗ:

const landingComponents = {
    'landing-root': LandingComponent,
    'get-notified': GetNotifiedComponent,
    'typed-component': TypedComponent,
    'sticky-bar': StickyBarComponent,
};

рддрдм рдореИрдВрдиреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ declarations: Object.values(landingComponents) , entryComponents: Object.values(landingComponents) рдХреЗ рд╕рд╛рде рдЦрд┐рд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред

рд▓рдЧрддрд╛ рд╣реИ рдХреНрдпрд╛ ... рдПрдУрдЯреА рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдПрдХ рд╕рд░рдгреА рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдШрдЯрдХреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ ... рдЕрдиреНрдпрдерд╛ рдЕрдЧрд░ рдореИрдВ рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рддрд░реАрдХреЗ рд╕реЗ рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдпрд╣ рднрдпрд╛рдирдХ "рдХрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛" рдорд┐рд▓рддрд╛ рд╣реИред

рдЬрд┐рддрдирд╛ рдореБрдЭреЗ рдПрдВрдЧреБрд▓рд░ рд╕реЗ рдкреНрдпрд╛рд░ рд╣реИ, рдПрдУрдЯреА рдХрдВрдкрд╛рдЗрд▓рд░ рдЬрд╛рджреБрдИ рдордВрддреНрд░реЛрдВ рдХреЗ рдЕрд░рд╛рдЬрдХ рд╕реВрдк рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред

рдпрд╣ рдПрдХ рдХрдкрд▓рд╛ рдмрд╛рд░ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдорд╛рдзрд╛рди рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐ рдореЙрдбреНрдпреВрд▓ 1 рдШрдЯрдХ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдкреАрдЖрд░ рд╕реЗ рдПрдВрдЧреБрд▓рд░ рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╡рд┐рд▓рдп рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЗрд╕ рд╡рд┐рд╖рдп рдХреЗ рд▓рд┐рдП рд░реБрдЪрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ: https://github.com/ рдХреЛрдгреАрдп/рдХреЛрдгреАрдп/рдкреБрд▓/27481

рдпрд╣ рдореБрджреНрджрд╛ рдЖрдЬ 2 рд╕рд╛рд▓ рдкреБрд░рд╛рдирд╛ рд╣реЛ рдЧрдпрд╛

рдлрд┐рд░ рднреА, рдХреЛрд░ рдЯреАрдо рдХреА рдУрд░ рд╕реЗ рдПрдХ рд╢рдмреНрдж рднреА рдирд╣реАрдВ рдХрд╣рд╛ рдЧрдпрд╛ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреАред

@tiagodws lol рдЖрдк рдЗрд╕реЗ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рддрдиреЗ рд╕рдордп рд╕реЗ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдХреНрдпрд╛ рдЖрдкрдиреЗ рд░рд┐рдорд╛рдЗрдВрдбрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдерд╛?

рдмрд╕ рдПрдХ FYI
рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ https://github.com/angular/angular/issues/13590#issuecomment -389113560 рдЬреИрд╕реА рд╣реА рдереА
рдПрдУрдЯреА рдореЛрдб рдореЗрдВ рдЖрдпрд╛рдд рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХреЗрд╕-рд╕рдВрд╡реЗрджреА рд╣реЛрддреЗ рд╣реИрдВ

@peterdeme ... рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗрд╕-рд╕рдВрд╡реЗрджреА рд╣реИ (рдФрд░ рдкрде рд╕рдорд╛рди рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ ... = рд▓рд┐рдирдХреНрд╕ рдЖрдзрд╛рд░рд┐рдд, рд╡рд┐рдВрдбреЛрдЬрд╝ рдирд╣реАрдВ)ред

рдЕрд░реЗ рджреЛрд╕реНрддреЛрдВ, рдмрд╕ рджреЗрд░ рд╕реЗ 2 рд╕рд╛рд▓ рдХреЗ рдЕрдВрдХ рдЖрдпреБ рдЙрддреНрд╕рд╡ рдХреЗ рд▓рд┐рдП рд╡рд╛рдкрд╕ рдЖ рд░рд╣реЗ рд╣реИрдВред include рдФрд░ exclude tsconfig.json #$ рдХреЗ рдЕрдиреБрднрд╛рдЧреЛрдВ рд╕рд╣рд┐рдд, рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╛рд╡рд┐рдд рдХрд╛рд░рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдкрд░рд╕реНрдкрд░ рдмрд╛рддрдЪреАрдд рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдореВрд▓ рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рд╣реИ рдЗрд╕ рдзрд╛рдЧреЗ рдХреЗ рд▓рд┐рдПред

рдпрджрд┐ рдЖрдк рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдШрдЯрдХреЛрдВ рдХрд╛ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдмрдирд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЖрд╕рд╛рди рдЖрдпрд╛рдд рдХреЗ рд▓рд┐рдП рдмреИрд░рд▓ рдлрд╝рд╛рдЗрд▓реЗрдВ ( index.ts ) рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдЬрдм рдЖрдк рдЙрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдХреЛрдгреАрдп рд╕рдВрдХрд▓рдХ рдЯреВрдЯ рдЬрд╛рдПрдЧрд╛ред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЬреИрд╕реЗ рд╣реА рдЖрдк рдЙрд╕ рдмреИрд░рд▓рдлрд╛рдЗрд▓ рд╕реЗ рдХреБрдЫ рднреА рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ, @shared/components ), рдпрд╣ рд╣рд░ рдПрдХ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдЦреЛрдЬрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдЧрд╛ред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк рдЕрдкрдиреЗ рдЗрдЪреНрдЫрд┐рдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рдШрдЯрдХреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП import { SharedToastComponent } from '@shared/components'; ), рддреЛ рд╕рдВрдХрд▓рдХ рдЕрднреА рднреА рдкреНрд░рддреНрдпреЗрдХ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдП рдЧрдП рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдХреА рддрд▓рд╛рд╢ рдХрд░реЗрдЧрд╛, рдФрд░ рд▓рд╛рдкрддрд╛ рдШрдЯрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ (рдЪреЗрддрд╛рд╡рдиреА рдирд╣реАрдВ) рдлреЗрдВрдХ рджреЗрдЧрд╛ред

рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдХрд╛рдордХрд╛рдЬ рд╣реИрдВред

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

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

рдпрд╣рд╛рдБ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ 2019 рдореЗрдВ рдПрдВрдЧреБрд▓рд░ рдЯреАрдо рдЗрд╕ рдмрд╣реБрдд рдкреБрд░рд╛рдиреЗ, рдмрд╣реБрдд рдХрд╖реНрдЯрдкреНрд░рдж рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдХрд░реЗрдЧреАред рдореИрдВ

@ swimmadude66 ... рдЖрдкрдиреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ lib рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдиреЗ рдФрд░ рдЗрд╕реЗ tsconfig.json рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдХреЛрдгреАрдп рдРрдк рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд┐рдпрд╛ ... рдЬреИрд╕реЗ: "paths": {"ng-demo": ["./packages/ng-demo/src/index.ts"]} рдФрд░ рдЗрд╕реЗ import { DemoModule } from 'ng-demo'; рдЬреИрд╕реЗ рдЖрдпрд╛рдд рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

рд╣рд░ рдХрдВрдкреЛрдиреЗрдВрдЯ рд╕реНрдЯрдм рдкрд░ рдПрд░рд░ рд╣реЛрдирд╛ рд╕рдмрд╕реЗ рдХрд╖реНрдЯрдкреНрд░рдж рдмрд╛рдд рд╣реИред рд╣рд░ рдХреЛрдИ рдРрдирдХ рдХрд╛ рдкрд░реАрдХреНрд╖рдг/рд▓реЗрдЦрди рдХрд░ рд░рд╣рд╛ рд╣реИ, рд╣реИ рдирд╛? рддреЛ рдШрдЯрдХ рд╕реНрдЯрдм рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд╕рднреА рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдмреИрд░рд▓ рдХрд╛ рдореБрджреНрджрд╛ рдХрдо рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИред рдореИрдВ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рд╣рд░ рдХреЛрдИ рдмреИрд░рд▓ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕рднреА рдХреЛ рдЪрд╢реНрдорд╛ рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рддреЛ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрд░ рдЯреАрдо рдХреЗ рд▓рд┐рдП рдЪрд╢реНрдорд╛ рдореБрджреНрджрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝реА рдкреНрд░реЗрд░рдгрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЗрд╕реЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ "рдлрд╝реНрд░реАрдХреНрд╡реЗрдВрд╕реА рд▓реЛ" рд▓реЗрдмрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ "рдлрд╝реНрд░реАрдХреНрд╡реЗрдВрд╕реА рд╣рд╛рдИ" рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдпреВрдирд┐рдЯ рдЯреЗрд╕реНрдЯрд┐рдВрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдИ рднреА рд╡реНрдпрдХреНрддрд┐ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░реЗрдЧрд╛ред

рдпрд╣ рдПрдУрдЯреА рдореЗрдВ рднреА рд╕реБрд╕рдВрдЧрдд рдирд╣реАрдВ рд╣реИред рд╕рд░реНрд╡ рдХреЗ рд╕рд╛рде рдЪрд▓рдиреЗ рдкрд░ рдХреЛрдгреАрдп рд╕реАрдПрд▓рдЖрдИ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ (рдЬреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдПрдУрдЯреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ) рд▓реЗрдХрд┐рди рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рддреНрд░реБрдЯрд┐рдпрд╛рдВ рджреЗрддрд╛ рд╣реИред

рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдВрдЧреБрд▓рд░ рд╕реАрдПрд▓рдЖрдИ рд░реЗрдкреЛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдЕрдЬреАрдм рд╣реИред

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

рдКрдкрд░ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпреВрдЖрдИ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕реАрдЖрдИ/рд╕реАрдбреА рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХреЗ рд▓рд┐рдП рдПрдХ рдЬреЛрдЦрд┐рдо рддрддреНрд╡ рд╣реИ!

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

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

рдЖрдкрдХреЗ рдФрд╕рдд рдЕрдиреБрдХреВрд▓ рдХреЛрдгреАрдп рджреЗрд╡ рд▓реЗрдЦрди рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг рдпрд╣рд╛рдВ рдХреИрд╕реЗ рдЖрдП:

рдП) рдЖрдИрдПрдордПрдЪрдУ рдирдХрд▓реА рдШрдЯрдХреЛрдВ, рд╕реЗрд╡рд╛рдУрдВ рдЖрджрд┐ рдХреЛ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП "рд╕рд╣рд╛рдпрдХ" рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдбреАрдЖрд░рд╡рд╛рдИ-рдХреЛрдб рдЕрднреНрдпрд╛рд╕ рд╣реИред рд╕рднреА .spec рдлрд╝рд╛рдЗрд▓реЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдЕрднреНрдпрд╛рд╕ рдЗрд╕ рдмрдЧ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдЯреЗрд╕реНрдЯрд░ рд╕реНрдореИрдХ рдЪрд▓рд╛рддрд╛ рд╣реИред

рдмреА) рд╕рднреА .spec рдлрд╝рд╛рдЗрд▓реЗрдВ рдЗрд╕ "рд╕рд╣рд╛рдпрдХ" рдлрд╝рд╛рдЗрд▓ рдХреЛ "рдореЙрдХ рдореЙрдбреНрдпреВрд▓" рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдЖрдпрд╛рдд рдХрд░ рд╕рдХрддреА рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░реАрдХреНрд╖рдг рдХреЛрдб рд╕реЗ рдХреЛрдИ рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИред рдирдХрд▓реА рдШрдЯрдХ рдЙрдкрдпреЛрдЧреА рд╣реЛрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рдирдХрд▓реА рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╕рджрд╕реНрдпрддрд╛ рдХреЗ рдмрд┐рдирд╛, рдЬрд┐рд╕рдХреА рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХреЛрдИ рднреВрдорд┐рдХрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рддреБрдЪреНрдЫ рд╣реИ ... рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ Google рдЦреЛрдЬ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕ рдмрдЧ рдХреЛ рдвреВрдВрдврдирд╛, рдереНрд░реЗрдб рдХреЛ рдкрдврд╝рдирд╛ рдФрд░ рдкрдЪрд╛рдирд╛ рдФрд░ рд╕рд╣рд╛рдпрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдирд╣реАрдВ рдерд╛ред

рдореИрдВ рдЗрд╕реЗ рдХреЗрд╡рд▓ рд╕рд╣рд╛рдпрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВ рдЬрд┐рд╕рдореЗрдВ рдирдХрд▓реА рдШрдЯрдХ рд╣реЛрддреЗ рд╣реИрдВ (рдЕрдиреНрдп рдмрд╛рддреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛):

/*
  mock components
  !! Each mock component added to this file *must* be added to the "MockTestModule", see below !!
*/
@Component({
  selector: 'app-mock-component',
  template: '<span>mock widget</span>'
})
export class MockComponent {}

/*
  This is an unused module to resolve the ng build error:
    'ERROR in : Cannot determine the module for class MockComponent
    in C:/code/myRepo/src/assets/test/test-resources.ts!
    Add MockComponent to the NgModule to fix it.'

  Reference: https://github.com/angular/issues/13590

  Each mock component added to this file *must* be added to the "MockTestModule"
*/
@NgModule({
  declarations: [ MockComponent ],
})
export class MockTestModule {}

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЙрдкрд░реЛрдХреНрдд рдлрд╝рд╛рдЗрд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдлреА рдмрдбрд╝реА рд╣реИ ... "MockTestModule" рдХреЛ рд╣реЗрд▓реНрдкрд░ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рдиреАрдЪреЗ рджрдмрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ...

...рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ "рдПрдирдЬреА рдмрд┐рд▓реНрдб" рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдХреЗрдЬ.рдЬреЗрд╕рди рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдХреЙрд▓ рдХреЛ рд░реЛрдХрддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдХрдВрд╕реЛрд▓ рд╕рдВрджреЗрд╢ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ "рд╣реЗ рдпреВрдЖрдИ рдпреВрдирд┐рдЯ рдЯреЗрд╕реНрдЯрд░реНрд╕, рдХреНрдпрд╛ рдЖрдкрдиреЗ рдореЙрдХ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдЕрдкрдирд╛ рдирдХрд▓реА рдШрдЯрдХ рдЬреЛрдбрд╝рд╛ рд╣реИ?" рдХреБрд╣рдиреА рдорд╛рд░рдирд╛

рдпрд╣рд╛рдБ рдореЗрд░реЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореЗрд░реА рд╕рдВрд░рдЪрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

тФЬтФАтФА icons.module.ts
тФЬтФАтФА index.ts
тФЬтФАтФА icon
тФВ┬а┬а тФЬтФАтФА icon.component.html
тФВ┬а┬а тФЬтФАтФА icon.component.ts
тФВ┬а┬а тФФтФАтФА icon.module.ts
тФФтФАтФА icon-indicator
    тФЬтФАтФА icon-indicator.component.html
    тФЬтФАтФА icon-indicator.component.ts
    тФФтФАтФА icon-indicator.module.ts

icons.module.ts рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рдерд╛:

import { IconComponent } from './icon/icon.component';
import { IconIndicatorComponent } from './icon-indicator/icon-indicator.component';

export { IconIndicatorComponent, IconComponent };

@NgModule({
  /* this was all fine */ 
})
export class IconsModule {}

index.ts рдерд╛:

export * from './icons.module';

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рдереА рдХрд┐ рд╕рдВрдХрд▓рдХ рдиреЗ рд╕рдВрдмрдВрдзрд┐рдд рдШрдЯрдХреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЖрдЗрдХрди рдФрд░ рдЖрдЗрдХрди-рд╕рдВрдХреЗрддрдХ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдкрд╛рд░реНрд╕ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ Cannot determine the module for class рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХ рджреА рдереАред рдпрд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдПрдирдЬреА 5 рд╣реИред рдПрдирдЬреА 7 рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдореБрдЭреЗ рдХреЗрд╡рд▓ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реАред

рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд┐рд░реНрдпрд╛рдд рдХреЛ рдПрдХ рд╕реНрддрд░ рдиреАрдЪреЗ рд▓реЗ рдЬрд╛рдирд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдирд┐рд░реНрдпрд╛рдд рд╡рд┐рд╡рд░рдг рдХреЛ icons.module.ts рдореЗрдВ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдпрд╣рд╛рдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛:

icon.module.ts:
export { IconComponent };
...

icon-indicator.module.ts:
export { IconIndicatorComponent };
...

рдФрд░ рд╕рдорд╛рдпреЛрдЬрд┐рдд index.ts :

export * from './icons.module';
export * from './icon/icon.module';
export * from './icon-indicator/icon-indicator.module';

рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИред

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

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирдпрд╛ рдЖрдЗрд╡реА рд░реЗрдВрдбрд░рд░ рдПрдУрдЯреА рдХреЗ рд╕рд╛рде рдХрд╛рдлреА рдХреБрдЫ рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░реЗрдЧрд╛ред

рдореБрдЭреЗ рд╣рд░ рдореБрджреНрджреЗ рдкрд░ рдпрд╣ рд╕реБрдирдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИред

рдореИрдВ рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдХреЛрдгреАрдп 7.2.0 рдФрд░ рдХреЛрдгреАрдп-рдХреНрд▓реА 7.3.0 . рдХреЗ рд╕рд╛рде рдХрд░ рд░рд╣рд╛ рд╣реВрдБ

ERROR in : Cannot determine the module for class ModalMockComponent in /Users/user/repos/angular-skeleton/src/app/shared/modal/modal.component.mock.ts! Add ModalMockComponent to the NgModule to fix it.
Cannot determine the module for class TranslatePipeMock in /Users/user/repos/angular-skeleton/src/app/shared/pipes/translate.pipe.mock.ts! Add TranslatePipeMock to the NgModule to fix it.

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдкрд╛рд╕ TranslatePipe рдФрд░ TranslatePipeMock рдореЗрд░реЗ Shared Module рдХреЗ рдЕрдВрджрд░ рд╣реИред рдЯреНрд░рд╛рдВрд╕рд▓реЗрд╢рдирдкрд╛рдЗрдк рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдирдХрд▓реА рдкрд╛рдЗрдк рдирд╣реАрдВ рд╣реИред
translate.pipe.mock.ts рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдЖрдпрд╛рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рд▓реЗрдХрд┐рди рдЕрдм рдореЗрд░рд╛ рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдлрд▓ рд╣реЛ рдЧрдпрд╛
ng build --prod

рд╣рдо рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд░рддреЗ рд╣реИрдВ?

рдПрдЯреАрдПрдо рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬреЛ рдЗрд╕реЗ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "types": []
  },
  "exclude": [
    "test.ts",
    "**/*.spec.ts",
    "**/*.mock.ts"
  ]
}

рдЗрд╕ рдореБрджреНрджреЗ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдХрдард┐рди рд╣реИред рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ (рдЦрд░рд╛рдм рдбрд┐рдЬрд╛рдЗрди)ред рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдХреНрдпрд╛ рдпреЛрдЬрдирд╛ рд╣реИ? рдЖрд╕рд╛рди рд╣реИ рдпрд╛ рдореБрд╢реНрдХрд┐рд▓?

@rrmayer рдЗрд╕ рдореБрджреНрджреЗ рдХреА рд╕реНрдерд┐рддрд┐ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ "рдЖрдЗрд╡реА рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ", рдЬреИрд╕рд╛ рдХрд┐ рд▓рдЧрднрдЧ рд╕рднреА "рд╡рд░реНрддрдорд╛рди" рдореБрджреНрджреЛрдВ рдХреЗ рд╕рд╛рде рд╣реИред

рд╣рдо рдмрд╕ рдЗрд╕реЗ "рддреНрд░реБрдЯрд┐" рд╕реЗ "рдЪреЗрддрд╛рд╡рдиреА" рдореЗрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рд╣реЛрдВрдЧреА ... рдХреНрдпрд╛ рдпрд╣ рдЗрддрдирд╛ рдХрдард┐рди рд╣реИ?

@ Terrafire123 ... рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдпрд╛ рдирд┐рд░реНрдорд╛рдг рдЯреВрд▓рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдХрдИ рд╕рдВрдмрдВрдз рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рддрдереНрдп рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВ рдХрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рддреНрд░реБрдЯрд┐ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдПрдХ рдЧрдВрднреАрд░ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред

рдореБрдЭреЗ рдХреЛрдИ рдЙрдореНрдореАрдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд▓рд┐рдП рддрдп рд╣реЛ рдЬрд╛рдПрдЧрд╛: рдбреА

рд╢рд╛рдпрдж рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдо рд╕реЗ рдХрдо рдПрдХ рддреНрд░реБрдЯрд┐ рдпрд╛ рдЪреЗрддрд╛рд╡рдиреА рджрд┐рдЦрд╛рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджреНрджреЗрд╢реНрдп рдкрд░ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдШрдЯрдХреЛрдВ рдХреЛ рддреЛрдбрд╝рдирд╛ рдмрд╣реБрдд рдкрд░реЗрд╢рд╛рди рд╣реИред

рдЕрдкреНрд░рдпреБрдХреНрдд рдЖрдпрд╛рдд рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддреЗ рд╣реИрдВ..

import { UnusedImportComponent } from "./used-somewhere-else-or-not.component";

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрдХреНрд╖рд╛ рдХреЗ рдЖрдЧреЗ 'рдирд┐рд░реНрдпрд╛рдд' рдХреАрд╡рд░реНрдб рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЬрд┐рд╕ рд╡рд░реНрдЧ рдореЗрдВ @Component рдбреЗрдХреЛрд░реЗрдЯрд░ рд▓рд╛рдЧреВ рд╣реИ, рдЙрд╕реЗ рдХреБрдЫ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИред рдЪрд╛рд╣реЗ рдЖрдк рдШрдЯрдХ рдХреА рдХрдХреНрд╖рд╛ рдЖрдпрд╛рдд рдХрд░реЗрдВ рдФрд░ рд╕реАрдзреЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд░реЗрдВ рдпрд╛ рдШреЛрд╖рд┐рдд рдХрд░реЗрдВ рдЬреИрд╕реЗ CoreMocksModule рдФрд░ рдлрд┐рд░ рдореЙрдбреНрдпреВрд▓ рдЖрдпрд╛рдд рдХрд░реЗрдВ, рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХ рдЙрдкрд╛рдп рд╣реИ! рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╣рдорд╛рд░реЗ рд╕реНрдЯрдм рдШрдЯрдХ рдЗрд╕ рддрд░рд╣ рдШреЛрд╖рд┐рдд рд╣реИрдВ:

@Component({
  selector: 'app-user-stub-component',
  template: ''
})
export class UserStubComponent {}

рд╣рдореЗрдВ 'рдирд┐рд░реНрдпрд╛рдд' рдХреАрд╡рд░реНрдб рдХреЛ рд╣рдЯрд╛рдирд╛ рд╣реЛрдЧрд╛ рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рд╣рдореЗрдВ рдкрд░реАрдХреНрд╖рдг/рдкрд░реАрдХреНрд╖рдг рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдШрдЯрдХ рдХреЛ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рдХрд░реЛ:

@Component({
  selector: 'app-user-stub-component',
  template: ''
})
class UserStubComponent {}

export default UserStubComponent;

рдЕрдм, рд╣рд░ рдЬрдЧрд╣ рдЬрдм рдЖрдк рд╕реНрдЯрдм рдХрд╛ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рдирд┐рдореНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдХреЛрд╖реНрдардХреЛрдВ рд╕реЗ рдмрдЪрдирд╛ рд╣реЛрдЧрд╛:
import UserStubComponent from 'path'

рдореБрдЭреЗ рднрд░реЛрд╕рд╛ рд╣реИ рдпреЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдПрдУрдЯреА рд╕рдВрдХрд▓рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред

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

@ renilbabu03 JS рдХреЗрд╕ рд╕реЗрдВрд╕рд┐рдЯрд┐рд╡ рд╣реИред

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

рдореИрдВрдиреЗ export class рдХреЛ default export рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛:

import { PipeTransform, Pipe } from '@angular/core';

@Pipe({
  name: 'translate'
})
class TranslatePipeMock implements PipeTransform { // <-- NOT: "export class TranslatePipeMock implements PipeTransform"
  public name = 'translate';

  public transform(query: string): any {
    return query;
  }
}

export default TranslatePipeMock;

рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдлрд┐рдХреНрд╕?
рдореИрдВрдиреЗ export default <class> рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ ng serve --aot рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХрддрд╛ рд╣реИ: рдореЙрдбреНрдпреВрд▓ рджреНрд╡рд╛рд░рд╛ рдЕрдирдкреЗрдХреНрд╖рд┐рдд рдорд╛рди 'рд╢реВрдиреНрдп' рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ред

рдпрд╣ рдмрд╣реБрдд рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рд╣реИред

@redplane рдЖрдк рдРрд╕рд╛ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ default рдирд┐рд░реНрдпрд╛рддред

рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ:
https://github.com/angular/angular/blob/master/aio/content/examples/testing/src/testing/router-link-directive-stub.ts

рдЬрдм рддрдХ рдореИрдВ import рдПрдХ exported рд╕рдВрдкрддреНрддрд┐, рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рд╣реЛрдиреЗ рдкрд░ рдХреЛрдгреАрдп рджреЗрдЦрднрд╛рд▓ рдХреНрдпреЛрдВ рдХрд░рддрд╛ рд╣реИ?

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

рдореИрдВ рдПрдВрдЧреБрд▓рд░ 6 рдореЗрдВ рдлрдВрд╕ рдЧрдпрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЗрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХрдорд╛рддреНрд░ рдбреЗрд╡рд▓рдкрд░ рд╣реВрдВ рдФрд░ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╢рд┐рдк рдХрд░рдиреЗ рдХреЗ рдмреАрдЪ рдореЗрдВ рдирд╡реАрдирддрдо рд╕реНрдерд┐рд░ рдЯреВрд▓ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЪреАрдЬреЛрдВ рдХреЛ рд░рд┐рдлреИрдХреНрдЯрд░ рдХрд░рдирд╛ рдирд░рдХ рд╣реЛрдЧрд╛ ... рдХрдо рд╕реЗ рдХрдо рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдгреАрдп 6+ рдХреЛ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рдкреИрдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ...

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

рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдХреЛрдгреАрдп рд╕рдВрдХрд▓рдХ рдореЗрд░реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдШрдЯрдХ рдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдХрд┐рд╕реА рднреА ngModules рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред

рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдЕрдкрдиреЗ рдПрдирдо рдХреЛ public-api.ts рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рд╕рд╛рде рд╣реА рдЙрдиреНрд╣реЗрдВ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рд╕реАрдзреЗ рдЖрдпрд╛рдд рдХреЗ рд╕рд╛рде рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рди рдХрд┐ рдХрд┐рд╕реА рд╕рд╛рдкреЗрдХреНрд╖ рдЖрдпрд╛рдд рдкрде рдХреЗ рд╕рд╛рдеред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо: рдШрдЯрдХ-lib
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо: рдбреЗрдореЛ-рдРрдк

рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдЕрдВрджрд░ рдШреЛрд╖рд┐рдд рдХрд┐рд╕реА рднреА рдЗрдВрдЯрд░рдлреЗрд╕, рдХреНрд▓рд╛рд╕, рдПрдирдо рдЖрджрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рд╕реАрдзреЗ рдкрде рд╕реЗ рдЖрдпрд╛рдд рдХрд░реЗрдВ:

рдЖрдпрд╛рдд {SearchEnum} 'рдШрдЯрдХреЛрдВ-lib' рд╕реЗ;

рдФрд░ рдордд рдХрд░реЛ
рдЖрдпрд╛рдд {SearchEnum} '../../../projects/components-lib/path-to-your-component' рд╕реЗ;

рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрд┐рд╕реА рдХреА рдорджрдж рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдШрдВрдЯреЛрдВ рдмрд┐рддрд╛рдП рд╣реИрдВред

рдПрдирдЬреА 9 рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдорд┐рдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП рд╕рдВрдЧрддрддрд╛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдореИрдВ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдПрдирдЬреА 8 рдЪрд▓рд╛рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВред

рдореИрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреБрдЫ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рд╡рд░реНрдЧреЛрдВ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рди рдкрд░ рдЖрдкрдХреЗ рдШрдЯрдХ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдорд╛рддрд╛-рдкрд┐рддрд╛ рд╡рд░реНрдЧреЛрдВ рдХреА рдЙрд╕ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЗрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдЕрдореВрд░реНрдд рд╣реИрдВ рдФрд░ рдПрдирдЬреА 9 рдХреЗ рд╕рд╛рде рдПрдирдЬреА 8 рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП @Directive({ selector: 'random' }) рд╣реЛрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рддреЛ рдореИрдВ рд▓рдЧрднрдЧ рдЗрд╕рд╕реЗ рджреВрд░ рд╣реЛ рдЧрдпрд╛... рд▓реЗрдХрд┐рди:

Cannot determine the module for class NgxSubFormComponent in /........./node_modules/ngx-sub-form/ngx-sub-form.d.ts! Add NgxSubFormComponent to the NgModule to fix it.`

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

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

рд╣рд╛рдп рд╕рдм, рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЪреБрдкреНрдкреА рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред

рд╡реНрдпреВ рдЗрдВрдЬрди рдореЗрдВ рдПрдирдЬреАрд╕реА, рдбрд┐рдЬрд╛рдЗрди рджреНрд╡рд╛рд░рд╛, "рд╕рдВрдХрд▓рди" рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП ngfactory рдлрд╛рдЗрд▓реЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ - рдпрд╛рдиреА, рдЖрдкрдХреЗ tsconfig рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЯреАрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдкреВрд░рд╛ рд╕реЗрдЯред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ
рд╕реНрд╡рдпрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ - рдпрд╣ tsconfig рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред рдПрдирдЬреАрд╕реА рд╕рд┐рд░реНрдл рдЙрд╕рдХреЗ рдКрдкрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд░ рд░рд╣рд╛ рд╣реИред

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

рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ tsconfig. рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рд╕рдВрдкрд╛рджрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢реАрд░реНрд╖-рд╕реНрддрд░реАрдп tsconfig рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕рднреА рдлрд╝рд╛рдЗрд▓реЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рдВрдХрд▓рди рдХреЗ рд▓рд┐рдП tsconfig.app.json , рдЬреЛ рд╕рдВрдкрд╛рджрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИ рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдХреЗрд╡рд▓ рдРрдк рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдХреЛ ngc рдХреЗ рд╕рд╛рде рдХрдВрдкрд╛рдЗрд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ (рдкреНрд░рддреНрдпреЗрдХ tsconfig рдПрдХ "рдкреНрд░реЛрдЬреЗрдХреНрдЯ" рд╣реИ) рдХреЛ рд╕рдВрд░рдЪрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдПрдХ рдШрдЯрдХ рдФрд░ рдЙрд╕рдХреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╣рдореЗрд╢рд╛ рдПрдХ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

рдЖрдЗрд╡реА рдореЗрдВ рд╡рд╣реА рдирд┐рдпрдо рдЕрднреА рднреА рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рдХрдИ рдЫреЛрдЯреЗ рдЕрдВрддрд░ рд╣реИрдВ:

  • рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЖрдЗрд╡реА _any_ @Component рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдЧрд╛, рднрд▓реЗ рд╣реА рдпрд╣ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред
  • рдЖрдЗрд╡реА рдореЗрдВ, рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рдШрдЯрдХ рд╣реЛрдирд╛ рдЕрдм рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рд╡рд╣ рдШрдЯрдХ рдЕрдкрдиреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдЕрдиреНрдп рдШрдЯрдХреЛрдВ/рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рддрдм рднреА рдЖрдкрдХреЛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЯрд╛рдЗрдк-рдЪреЗрдХрд┐рдВрдЧ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓реЗрдВрдЧреА, рдХреНрдпреЛрдВрдХрд┐ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд┐рдирд╛ рдЙрд╕ рдШрдЯрдХ рдХреЛ рдФрд░ рдХреБрдЫ рднреА рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрдЧрд╛ред
  • рдбреЗрдХреЛрд░реЗрдЯрд░ рдореЗрдВ jit: true рдзреНрд╡рдЬ рдЬреЛрдбрд╝рдХрд░ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдШрдЯрдХ рдпрд╛ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рд░рдирдЯрд╛рдЗрдо рддрдХ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЗрд╡реА рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдмрддрд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИред

@alxhub рдореБрдЭреЗ рдпрд╣ рд╕реБрдирдХрд░ рдЦреБрд╢реА рд╣реБрдИ рдХрд┐ рдпрд╣ рдЕрдм рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реИ!

рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ ngc рдХреБрдЫ рднреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдЧрд╛ рдФрд░ tsc рдХрд░реЗрдЧрд╛, рдФрд░ рд╡рд╣ tsc рдЕрдкрдиреЗ рджрд╛рдпрд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдЧрд╛ред рдХрд╣рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдХрд┐, рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдПрдХ рдШрдЯрдХ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ 100% рдПрдХ рдХреЛрдгреАрдп рдЪрд┐рдВрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдЕрдкрдиреЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реНрдХреЛрдк рд╕реЗ рд╣рдЯрд╛рдиреЗ рд╕реЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдбрд╝рдХ рдХреЛ рдиреАрдЪреЗ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдмреИрд░рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдЬреИрд╕реЗ рдкреИрдЯрд░реНрди рд╕рд╛рдорд╛рдиреНрдп рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг, рд╕рдВрдХрд▓рди рд╕реЗ рдХрд┐рд╕реА рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд┐рдХрд╛рд▓рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдмрд┐рдирд╛ рдЗрд╕реЗ рдХрд┐рд╕реА рднреА рдкреБрди: рдирд┐рд░реНрдпрд╛рдд рд╕реЗ рд╣рдЯрд╛рдП рдмрд┐рдирд╛ред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЙрдкрд░реЛрдХреНрдд "рдЙрди рдШрдЯрдХреЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ" рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдЕрдХреНрд╕рд░ рдЕрд╕рдВрддреЛрд╖ рд╕реЗ рдорд┐рд▓реЗ рдереЗред

рдЖрдЗрд╡реА (рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд┐рдирд╛ рдШрдЯрдХреЛрдВ рдкрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рддреНрд░реБрдЯрд┐рдпреЛрдВ) рдХреЗ рд╕рд╛рде рд╢реЗрд╖ рд╕реАрдорд╛ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рдХреНрдпрд╛ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдЪреЗрддрд╛рд╡рдиреА рджреЗрдирд╛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИ? рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпрджрд┐ рдореЙрдбреНрдпреВрд▓-рдХрдо рдХреЗ рд░реВрдк рдореЗрдВ рдШрдЯрдХ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЯрд╛рдЗрдк-рдЪреЗрдХрд┐рдВрдЧ рд╣реЛрддреА рд╣реИ, рддреЛ рдпрд╣ рдЕрдзрд┐рдХ рдХрдард┐рди (рдпрд╛ рдЕрд╕рдВрднрд╡) рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдореБрдЭреЗ Warning: ExampleUnusedComponent does not belong to an NgModule, and will be excluded from the output рдХреА рддрд░реНрдЬ рдкрд░ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЛ рд╕рдЯреАрдХ рд░реВрдк рд╕реЗ рдкрдХрдбрд╝ рд▓реЗрддрд╛ рд╣реИ рдХрд┐ рдШрдЯрдХ (рдФрд░ рдЗрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рд╕реА рднреА рдЕрдиреНрдп) рдХреЛ рддрдм рддрдХ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдПрдХ ngModule рдореЗрдВ рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред

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

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

nosachamos picture nosachamos  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

wangzilong picture wangzilong  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

wfalkwallace picture wfalkwallace  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

deepakgd picture deepakgd  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mohsen1 picture mohsen1  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ