Olá, Eu tenho o seguinte situação :
Tenho o arquivo de rotas que quero carregar preguiçosamente.
const routes: Routes = [
{ path: '',
component:TemplatePaginaAdministracaoComponent,
canActivate: [AdministracaoGuard]
},
{
path: 'login',
component: SiginComponent
},
]
@NgModule({
imports: [
RouterModule.forChild(routes)
],
exports: [ RouterModule ]
})
export class AdministracaoRoutingModule {
}
E tenho o arquivo de rotas principal :
const routes: Routes = [
{ path: '',
pathMatch: 'full',
redirectTo: 'servicos'
},
{ path: 'servicos',
component: TemplatePaginaServicoComponent,
},
{ path: 'administracao',
loadChildren: './administracao/administracao.module#AdministracaoModule'
},
{ path: '**',
component: S4NotFoundComponent
}
]
@NgModule({
imports: [
RouterModule.forRoot(routes, {useHash: true})
],
exports: [ RouterModule ]
})
export class AppRoutingModule {
}
Fiz todo o processo que aprendi na aula, porém quando acesso a rota de administração que é a rota que deve ser carregada de forma preguiçosa, sem que eu esteja logado, ele passa pelo administracaoGuard mas não consegue carregar a tela de login. na verdade, na URL do navegador tudo acontede de forma correta :
Tento acessar a rota de administração, a requisição passa pelo AdministracaoGuard que redireciona para o componente de login, mas a rota não é encontrada e sou redirecionado para o componente de pagina inexistente
Agora se eu já tiver logado, o lazyloading funciona, ele carrega o comopente de administração corretamente.