Angular 5 向子路由传递数据
Angular 5 passing data to child route
在我的 Angular 5 项目中,路由配置如下所示:
const routes: Routes = [
{
path: 'a',
component: MainComponent,
children: [
{
path: 'ab',
component: ABComponent
},
{
path: 'ac',
component: ACComponent
}
],
data: AData // array of objects
},
{
path: 'b',
component: MainComponent,
children: [
{
path: 'bb',
component: BBComponent,
data: BBData // array of objects
},
{
path: 'bc',
component: BBComponent,
data: BCData // array of objects
}
],
data: extraData // if I put it on, extraData will be both in BBComponent and BCComponent
}
];
理论上,BBData应该传递给BBComponent,BCData应该传递给BCComponent,但是对象this.route.snapshot.data(this.route ActivatedRoute的实例)是空的。对于路径 'a',数据已成功传入两个组件。
我不知道如何修复它,请帮助我。
首先检查您激活的路由属性。
在我的 Angular 5 项目中,路由配置如下所示:
const routes: Routes = [
{
path: 'a',
component: MainComponent,
children: [
{
path: 'ab',
component: ABComponent
},
{
path: 'ac',
component: ACComponent
}
],
data: AData // array of objects
},
{
path: 'b',
component: MainComponent,
children: [
{
path: 'bb',
component: BBComponent,
data: BBData // array of objects
},
{
path: 'bc',
component: BBComponent,
data: BCData // array of objects
}
],
data: extraData // if I put it on, extraData will be both in BBComponent and BCComponent
}
];
理论上,BBData应该传递给BBComponent,BCData应该传递给BCComponent,但是对象this.route.snapshot.data(this.route ActivatedRoute的实例)是空的。对于路径 'a',数据已成功传入两个组件。
我不知道如何修复它,请帮助我。
首先检查您激活的路由属性。