Angular2路由器:为什么不&x27;我们的路线上不再有州了吗
这是我的Angular2路由器:为什么不&x27;我们的路线上不再有州了吗,angular,typescript,Angular,Typescript,这是我的应用程序路径: const routes: Routes = [ { path: "login", component: LoginComponent }, { path: "users", component: UsersComponent }, { path: "error", component: ErreurComponent }, { pa
应用程序路径
:
const routes: Routes = [
{
path: "login",
component: LoginComponent
},
{
path: "users",
component: UsersComponent
},
{
path: "error",
component: ErreurComponent
},
{
path: "more/complex/path",
component: FooComponent
},
{
path: "",
component: HomepageComponent,
}
]
export const APP_ROUTER_MODULE = RouterModule.forRoot(routes)
为什么我不能为我的路由指定一个状态或名称?如果我想知道我是否在错误页面上,那么我必须检查当前路线并查找我在“路径”中指定的内容(另请参见上面的myFooComponent
)。我觉得这有点傻。有没有办法解决这个问题
const routes: Routes = [
{
path: "login",
component: LoginComponent,
data: { name: 'r1'}
},
{
path: "users",
component: UsersComponent,
data: { name: 'r2'}
},
{
path: "error",
component: ErreurComponent,
data: { name: 'r3'}
},
{
path: "more/complex/path",
component: FooComponent,
data: { name: 'r4'}
},
{
path: "",
component: HomepageComponent,
data: { name: 'r5'}
}
]
另请参见您可以传递
数据
。天哪,我的坏消息是您说得对,我查看的数据不正确。谢谢,这个位构造函数(route:ActivatedRoute){route.data.forEach(data=>console.log(data['name']);}可以在外部服务中使用吗?不知道“外部服务”是什么意思,但是你可以使用一个防护装置,例如,我的意思是:我的模块的所有组件是否都有一些共同的东西,我可以从中获取这些数据['name']信息。我想要的可能是解析防护装置。谢谢
class SomeComponent {
constructor(route:ActivatedRoute) {
route.data.forEach(data => console.log(data['name']));
}
}