我的所有页面都有一个带有工具栏和侧栏的正常布局,但是当用户进入登录页面或注册页面时,它们不应该是可见的.在AngularJS中,使用ui-router很容易在所有其他可以定义布局的页面之前包含一条路径.
但是如何在Angular2中使用本机路由器呢?我应该使用ngIf来显示工具和侧边栏还是有更好的方法?
最佳答案 可以使用路径的children属性:
export const routes:RouterConfig = [
//includes the login and registration route
...userRoutes,
{
path: '',
//checks if the user is logged in
canActivate: [Auth],
//only contains a <route-outlet />
component: LayoutComponent,
//routes like /dashboard will only accessible when Auth returns true
children: [
//all children are 'protected'
...modulRoutes,
...dashboardRoutes,
]
},
//404 handling
...errorRoutes
];
我使用了angular2的3.0路由器