рдирдИ рдХреЛрдгреАрдп 6.1 рд╕реБрд╡рд┐рдзрд╛рдПрдБ

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



рд░рд╛рдЙрдЯрд░ рдФрд░ рд╕реНрдХреНрд░реЙрд▓ рд╕реНрдерд┐рддрд┐ рд╕рд╣реЗрдЬреЗрдВ


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

рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдирд┐рдореНрди рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

RouterModule.forRoot(routes, {scrollPositionRestoration: 'enabled'}) 

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

ShadowDOM v1 рдФрд░ рджреЗрдЦреЗрдВ рдЗрдирдХреИрдкреНрд╕реБрд▓реЗрд╢рди


рд╕реАрдПрд╕рдПрд╕ рдирд┐рдпрдореЛрдВ рдХреЛ рдЙрди рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдпреЗ рдирд┐рдпрдо рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВред рдЗрд╕реЗ View Encapsulation рдХрд╣рддреЗ рд╣реИрдВред рдХрдВрдкреЛрдиреЗрдВрдЯ рдбреЗрдХреЛрд░реЗрдЯрд░ рдореЗрдВ ShadowDOM v1 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрдирдХреИрдкреНрд╕реБрд▓реЗрд╢рди рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдЗрд╕ рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

 @Component({ templateUrl: './my-component.html', encapsulation: ViewEncapsulation.ShadowDom }) export class MyComponent { } 

рдЕрдм ViewEncapsulation.Native рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдЫрд╛рдпрд╛ DOM v0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдкрджрд╛рд╡рдирдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

ShadowDOM v1 рдореЗрдВ рдорд╛рдирдХ рдХреЗ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рдХреНрд░реЙрд╕-рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рдорд░реНрдерди рд╣реИред рдЗрд╕ рдорд╛рдирдХ рдкрд░ рдХрд╛рдо рд╢реБрд░реВ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╢реИрдбреЛ DOM v0 рдФрд░ v1 рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдпрд╣рд╛рдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред

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

рдЪреЗрдирд┐рдВрдЧ рд╕реНрдХреИрдореЗрдЯрд┐рдХреНрд╕ рдирд┐рдпрдо


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

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ 2.9 рд╕рдорд░реНрдерди


рдЕрдм Angular, TypeScript 2.7 рдХреЗ рд╕рд╛рде, TypeScript 2.8 рдФрд░ 2.9 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЯреАрдПрд╕ 2.9 рдХреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ, рдЬреЛ рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИ, рдХреАрдбрд╝реЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд:

 Exported variable 'x' has or is using name 'y' from external module 'z' but cannot be named 

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

рдкрд░рд┐рдгрд╛рдо


рдирдП рдХреЛрдгреАрдп рд░рд┐рд▓реАрдЬ рдореЗрдВ рдЕрдиреНрдп рдкрд░рд┐рд╡рд░реНрддрди рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд┐рдХреГрдд URL ( malformedUriErrorHandler ) рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдФрд░ рд╕рд╣рдпреЛрдЧреА рд╕рд░рдгрд┐рдпреЛрдВ рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ ( KeyValuePipe ) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗред рдХреЛрдгреАрдп-рдХреНрд▓рд┐ рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рднреА рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ред

рдХреЛрдгреАрдп 6.1 рд╕рдВрд╕реНрдХрд░рдг 6.x рдХрд╛ рдирд╡реАрдирддрдо рдирд┐рдпреЛрдЬрд┐рдд рд▓рдШреБ рд╡рд┐рдореЛрдЪрди рд╣реИред рдЗрд╕рд▓рд┐рдП, рднрд╡рд┐рд╖реНрдп рдХреЗ рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рд╣рдо рдПрдВрдЧреБрд▓рд░ 7.0 рдХреЗ рдмреАрдЯрд╛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рд░рд┐рд╣рд╛рдИ рдФрд░ рдЗрд╕ рдврд╛рдВрдЪреЗ рдореЗрдВ рдирдИ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! рдХреЛрдгреАрдп 6.1 рдХреЗ рдХреНрдпрд╛ рдирд╡рд╛рдЪрд╛рд░ рдЖрдкрдХреЛ рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрддреЗ рд╣реИрдВ? рдЖрдк рдХреЛрдгреАрдп 7.0 рд╕реЗ рдХреНрдпрд╛ рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ?

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


All Articles