рдХреЛрдгреАрдп 9, рдирдпрд╛ рдХреНрдпрд╛ рд╣реИ?


рдЬрдм рддрдХ рд╕реНрдЯреАрдлрди рдлреНрд▓рд┐рди рдиреЗ рдкрд╛рд░рдВрдкрд░рд┐рдХ рд░реВрдк рд╕реЗ рдПрдХ рдирдпрд╛ рд░рд┐рд▓реАрдЬ рдФрд░ рдирдП рдПрдВрдЧреБрд▓рд░ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд▓реЗрдЦ рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛, рддрдм рддрдХ рдореИрдВрдиреЗ рд╕рдм рдХреБрдЫ рдПрдХ рд╕рд╛рде рдвреЗрд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдЗрд╕ рд╕рд╡рд╛рд▓ рдХрд╛ рдЬрд╡рд╛рдм рджрд┐рдпрд╛ рдХрд┐ рдирдпрд╛ рдХреНрдпрд╛ рд╣реИ?


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


рд╣рдореЗрд╢рд╛ рдХреЛрдгреАрдп рд╕реАрдПрд▓рдЖрдИ рдХреЗ рд╕рд╛рде, рдЖрдк рдХрд╛рдлреА рдЖрд╕рд╛рдиреА рд╕реЗ, рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдЧрд╛рдЗрдб рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред


рдЦрд╛рдХрд╛ рдкреНрд░рдХрд╛рд░-рдЬрд╛рдБрдЪ


FullTemplateTypeCheck рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕рдЦреНрдд рдЯреЗрдореНрдкрд▓реЗрдЯ рдлреНрд▓реИрдЧ рдЬреЛрдбрд╝реЗ рдЬрд╛рдПрдВрдЧреЗ, рдпрд╣ рдХреЗрд╡рд▓ рдЖрдЗрд╡реА рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдкреВрд░реНрдг рдореЛрдб рдореЗрдВ рд╣реЛрдЧрд╛:


  • @Input рдХреЛ рдШрдЯрдХреЛрдВ рдФрд░ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдмрдВрдзрди рдХреА рдЬрд╛рдБрдЪ @Input


  • рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╕рдордп, рдЯрд╛рдЗрдк рдХрд░реЗрдВ рд╕рдЦреНрддNullChecks рдХреА рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рдПрдЧреА


  • рдЬреЗрдиреЗрд░рд┐рдХ рд╕рд╣рд┐рдд рдШрдЯрдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдФрд░ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛


  • рдирд┐рд╖реНрдкрд╛рджрди рд╕рдВрджрд░реНрдн рдореЗрдВ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, * ngFor рдХреЗ рдЕрдВрджрд░


  • рдШрдЯрдХреЛрдВ рдФрд░ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдореЗрдВ $ рдШрдЯрдирд╛ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛, рд╕рд╛рде рд╣реА рд╕рд╛рде рдПрдирд┐рдореЗрдЯ рдХрд░рдирд╛


  • DOM рддрддреНрд╡реЛрдВ рдХреЗ рд╕реНрдерд╛рдиреАрдп рд╕рдВрджрд░реНрднреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм document.createElement рдПрдХ рдЯреИрдЧ рд╡рд╛рдкрд╕ рдХрд░реЗрдЧрд╛



рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рдЦреНрдд рдЪреЗрдХ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕ рдЪреЗрдХ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рдирд╛ рдХрднреА-рдХрднреА рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо $ рдХрд┐рд╕реА рднреА () рдХреЗ рд╕рд╛рде рдЖрдП, рдЬрд┐рд╕ рдкрд░ рдЪреЗрдХ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред


рдЙрджрд╛рд╣рд░рдг: {{$ рдХрд┐рд╕реА (рд╡реНрдпрдХреНрддрд┐) .addresss.street}}


@ContentChildren


ContentChild рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рд╕реАрдзреЗ рдмрдЪреНрдЪреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдЧрд╛


 <comp> <div #bar> <!-- new runtime --> <div #foo></div> <!-- matches in old runtime --> </div> </comp> 

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдзреНрд╡рдЬ рд╡рдВрд╢ рдХреЛ рдХрд╛рдЯрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА


@ ContentChildren ('foo', { рд╡рдВрд╢рдЬ : рдЕрд╕рддреНрдп}) foos: QueryList < ElementRef >


рдбрд┐


Angular DI рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рднреА рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдПрдХ Angular рдбреЗрдХреЛрд░реЗрдЯрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕реЗ рдХрд┐ @Directive() рдпрд╛ @Injectable (рдкрд╣рд▓реЗ @Injectable рдХрдХреНрд╖рд╛рдПрдВ рдХреЗрд╡рд▓ AOT рдореЛрдб рдореЗрдВ рдпрд╛ рдпрджрд┐ Inject рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рддреА рд╣реИрдВ)ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд╕реАрдПрд▓рдЖрдИ рдХреЛ рдЙрдиреНрд╣реЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред


рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:


 export class MyService {...} export class MyOtherService {...} export class MyThirdClass {...} export class MyFourthClass {...} export class MyFifthClass {...} @NgModule({ providers: [ MyService, {provide: SOME_TOKEN, useClass: MyOtherService}, 

рдХреЗ рдмрд╛рдж:


 @Injectable() export class MyService {...} @Injectable() export class MyOtherService {...} export class MyThirdClass {...} export class MyFourthClass {...} export class MySixthClass {...} 

рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:


 {provide: MyToken} 

рдХреЗ рдмрд╛рдж:


 {provide: MyToken, useValue: undefined} 

рдЗрдирдкреБрдЯ


рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдЗрдирдкреБрдЯ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, <my-comp-name = ""> рдореЗрдВ рдирд╛рдо рдЕрдм рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рджреГрд╢реНрдп рдмрдирд╛рддреЗ рд╕рдордп рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдкрд╣рд▓реЗ рд╡реЗ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рджреМрд░рд╛рди рд╕рднреА рд╕реЗрдЯ рдереЗ)ред


рдХреБрдЫ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк


@Component рдФрд░ @Directive рдЕрдВрджрд░ рд╣реЛрд╕реНрдЯ рдЬреИрд╕реА рд╕рдВрдкрддреНрддрд┐рдпрд╛рдБ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ @Directive рд╕рдХрддреА рд╣реИрдВ (рдкрд╣рд▓реЗ рдХреЗрд╡рд▓ рд╕реНрдкрд╖реНрдЯ рдлрд╝реАрд▓реНрдб рдЬреИрд╕реЗ @HostBinding рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реА рдереАрдВ)ред


HammerJS рд╕рдорд░реНрдерди HammerModule рдЖрдпрд╛рдд рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдкрд╣рд▓реЗ рдпрд╣ рд╣рдореЗрд╢рд╛ рдХрд╛рдо рдХреЗ рдкреИрдХреЗрдЬ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдерд╛ рдЪрд╛рд╣реЗ рдЖрд╡реЗрджрди HammerJS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ)ред


рдпрджрд┐ рдПрдХ рдЯреЛрдХрди @Host рдпрд╛ @Self рд╕рд╛рде рдЗрдВрдЬреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдореЙрдбреНрдпреВрд▓ рдЗрдВрдЬреЗрдХреНрдЯрд░ рдЗрд╕ рдЯреЛрдХрди рдХреА рдЦреЛрдЬ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдкрд╣рд▓реЗ, рдЗрди рдЭрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдЪрд┐рд╣реНрдирд┐рдд рдЯреЛрдХрди рдЕрднреА рднреА рдореЙрдбреНрдпреВрд▓ рд╕реНрддрд░ рдкрд░ рдЦреЛрдЬреЗ рдЬрд╛рдПрдВрдЧреЗ)ред


рдЬрдм рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рд╕рд╛рде рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдХрдИ рд╕реНрдерд╛рдиреАрдп рд▓рд┐рдВрдХ рдПрдХреНрд╕реЗрд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрд╣рд▓реЗ рдПрдХ рдХреЛ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЕрдВрддрд┐рдо рдЙрджрд╛рд╣рд░рдг рдкрд╣рд▓реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛)ред


рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдП рдЧрдП рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдирд┐рд░реНрджреЗрд╢ (рд▓реЗрдХрд┐рди рд╕реНрд╡рдпрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдпрд╛рдд рдирд╣реАрдВ рдХрд┐рдП рдЧрдП) рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ (рдкрд╣рд▓реЗ, рд╕рдВрдХрд▓рдХ рдиреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирд┐рдЬреА рдирд┐рд░реНрдпрд╛рдд рдХреЛ рдПрдХ рдЙрдкрдирд╛рдо рдХреЗ рд╕рд╛рде рд░рд┐рдХреЙрд░реНрдб рдХрд┐рдпрд╛ рдерд╛ рддрд╛рдХрд┐ рдпрд╣ рд╕рдВрдШрд░реНрд╖ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдЬреНрдЮрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗ)


рдбреЗрдХреЛрд░реЗрдЯрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдореЗрдВ рдмрд╛рд╣рд░реА рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рдмрд╛рд╣рд░реА рд╕реНрдерд┐рд░рд╛рдВрдХ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдлрд┐рд░ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИрдВ (рдкрд╣рд▓реЗ рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдВрдХрд▓рд┐рдд рдореЙрдбреНрдпреВрд▓ рд╕реЗ рдПрдХ рдирд┐рд░рдВрддрд░ рдпрд╛ рдлрд╝рдВрдХреНрд╢рди рдЖрдпрд╛рдд рдХрд░ рд╕рдХрддреЗ рдереЗ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ, рдФрд░ рдЗрд╕ рдирд┐рд░рдВрддрд░ / рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдкрдиреЗ @NgModule рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ рдХрд░реЗрдВ)ред


рд╕реНрдерд╛рдиреАрдп рд▓рд┐рдВрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реБрд▓рдн рдирд┐рд░реНрджреЗрд╢реЛрдВ рдореЗрдВ рдкреНрд░рддреНрдпрдХреНрд╖ рдЗрдирдкреБрдЯ рд╕рдВрджрд░реНрдн рдЕрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИрдВред


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


рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдкрд░ рдореЛрдЬрд╝реЗрдХ рдХреЗ рд╕рд╛рде рдЬреАрд╡рдирдЪрдХреНрд░ рдХреЗ рд╣реБрдХ рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ (рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рд░реНрджреЗрд╢ рдкрд░ рд╣реА рдЬреАрд╡рдирдЪрдХреНрд░ рдХреЗ рд╣реБрдХ рдмрджрд▓реЗрдВ)ред


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


ICU рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд░рди рдЯрд╛рдЗрдо рдкрд░ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЗрд╡рд▓ рдЯреЗрдХреНрд╕реНрдЯ, HTML рдЯреИрдЧреНрд╕ рдФрд░ рдЯреЗрдХреНрд╕реНрдЯ рдмрд╛рдЗрдВрдбрд░реНрд╕ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ (рдкрд╣рд▓реЗ рдирд┐рд░реНрджреЗрд╢ ICU рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдЕрдВрджрд░ рднреА рдЕрдиреБрдорддрд┐ рджреА рдЧрдИ рдереА)ред


рдкрджрд╛рд╡рдирдд


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



рд╣рдЯрд╛рдП рдЧрдП рдПрдкреАрдЖрдИ рдХреЗ рдирд┐рд╖реНрдХрд╛рд╕рди



рдФрд░ рдЕрдЧрд░ рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ, рддреЛ рдереЛрдбрд╝рд╛ рдФрд░ рд╣реИ ред


рдЦреИрд░, рд╣рдо рдХреНрд░рд┐рд╕рдорд╕ рдХреА рдЫреБрдЯреНрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд╛рдж рдХреЛрдгреАрдп 9 рдХреА рд░рд┐рд╣рд╛рдИ рдХреА рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ =):


FYI рдХрд░реЗрдВ, рдореИрдВрдиреЗ рдЕрдЧрд▓реЗ рд╕рд╛рд▓ рддрдХ #Angular 9.0 рд░рд┐рд▓реАрдЬрд╝ рдЖрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рддрд╛рдХрд┐ рд╣рдо рдФрд░ рдЖрдк рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╣рдлреНрддреЛрдВ рдореЗрдВ рд╕рдордп рдирд┐рдХрд╛рд▓ рд╕рдХреЗрдВред рд╣реИрдкреНрдкреА рдЫреБрдЯреНрдЯрд┐рдпрд╛рдБ рдФрд░ рдЖрдк 2020 рдореЗрдВ рдорд┐рд▓рддреЗ рд╣реИрдВ!


рдФрд░ рд╣рд╛рдВ, @ngFanatic рдЯреЗрд▓реАрдЧреНрд░рд╛рдо рдореЗрдВ рдЪреИрдирд▓ рдХреЛ рд╕рдмреНрд╕рдХреНрд░рд╛рдЗрдм рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдЖрдЧреЗ рдХреЛрдгреАрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЦрдмрд░реЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрдВрдЧреАред

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


All Articles