我正在做一个Angular 5项目,我的根页面是登录页面。在正确登录后,它应该导航到布局。
以下是我的app.routing.module.ts
const routes: Routes = [
{ path: '', loadChildren: './login/login.module#LoginModule' },
{ path: 'dashboard', loadChildren: './layout/dashboard/dashboard.module#DashboardModule' },
{ path: 'layout', loadChildren: './layout/layout.module#LayoutModule', canActivate: [AuthGuard] },
{ path: 'login', loadChildren: './login/login.module#LoginModule' },
{ path: 'signup', loadChildren: './signup/signup.module#SignupModule' },
{ path: 'error', loadChildren: './server-error/server-error.module#ServerErrorModule' },
{ path: 'access-denied', loadChildren: './access-denied/access-denied.module#AccessDeniedModule' },
{ path: 'not-found', loadChildren: './not-found/not-found.module#NotFoundModule' },
{ path: '**', redirectTo: 'not-found' }
];
我在auth服务中的登录函数如下
login(email: string, password: string) {
console.log(email);
this.firebaseAuth
.auth
.signInWithEmailAndPassword(email, password)
.then(value => {
console.log('Nice, it worked!');
this.router.navigate(['/layout']);
})
.catch(err => {
console.log('Something went wrong:',err.message);
});
}
登录后,它是导航到仪表板,这是在布局组件,但它不显示侧边菜单和标题。
我的布局布线如下。
const routes: Routes = [
{
path: '',
component: LayoutComponent,
children: [
{ path: '', redirectTo: 'dashboard' },
{ path: 'dashboard', loadChildren: './dashboard/dashboard.module#DashboardModule' },
{ path: 'charts', loadChildren: './charts/charts.module#ChartsModule' },
]
}
];
我的布局模块包括:
@NgModule({
imports: [
CommonModule,
LayoutRoutingModule,
TranslateModule,
NgbDropdownModule.forRoot()
],
declarations: [LayoutComponent, SidebarComponent, HeaderComponent]
})
export class LayoutModule {}
我的布局html包括:
<app-header></app-header>
<app-sidebar></app-sidebar>
<section class="main-container">
<router-outlet></router-outlet>
</section>
有什么帮助吗??
发布于 2018-06-20 21:37:20
从app.routing.module.ts
中删除此行
{ path: 'dashboard', loadChildren: './layout/dashboard/dashboard.module#DashboardModule' },
这可能会解决这个问题。
https://stackoverflow.com/questions/50943756
复制相似问题