[ANGULAR] Sobre o Lazy Loading #17
-
Eu gostaria de saber qual a diferença entre eles, porque nas versões antigas do Angular, eu achava muito mais fácil fazer Lazy Loading, porque era preciso colocar somente o caminho e o modulo diretamente de uma string. Por que isso mudou? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Antes, o Angular com Typescript, o Lazy Loading era feito assim: {
path: 'home',
loadChildren: './home/home.module#HomePageModule'
} E a partir do Angular 8, ficou assim: {
path: 'home',
loadChildren: () => import('./home/home.module').then(m => m.HomePageModule)
} Tá, mas qual a grande diferença entre eles, além de complicar mais a nossa vida? 😅 Embora o formato de string seja mais fácil para humanos, a forma atual, que é dinâmica, é capaz de evitar vários erros. Tem alguns propósitos em questão de compilação e criação de projeto, como facilitar para o webpack, de forma mais rápida, onde está o módulo. Mas um motivo que eu acho interessante é: Se eu errar o nome do módulo, a IDE vai me dizer. No formato de string, se eu errar o nome do module ou até mesmo o nome do path, a IDE não vai conseguir identificar que aquele caminho está errado. Da forma fazendo o import e pegando o módulo exato em seguida, nós temos mais certeza que naquele caminho passado, aquele módulo específico existe. Ou sejaaa... melhorou muuito a nossa vida para evitar erros de digitação (além de evitar a plataforma de ficar buscando um token dentro de uma string). |
Beta Was this translation helpful? Give feedback.
Antes, o Angular com Typescript, o Lazy Loading era feito assim:
E a partir do Angular 8, ficou assim:
Tá, mas qual a grande diferença entre eles, além de complicar mais a nossa vida? 😅
Embora o formato de string seja mais fácil para humanos, a forma atual, que é dinâmica, é capaz de evitar vários erros. Tem alguns propósitos em questão de compilação e criação de projeto, como facilitar para o webpack, de forma mais rápida, onde está o módulo. Mas um motivo que eu acho interessante é: Se eu errar o nome do módulo, a IDE …