activatedRoute 返回空对象
activatedRoute returning empty object
我有一个路由模块,它为许多其他模块设置了路由,我已经设法使用 activatedRoute
没有问题。但是我现在创建了一个单一组件,当我尝试使用 activatedRoute
.
时它返回一个空对象
路由模块看起来像这样:
const routes = [
{
path: 'path',
component: myComponent,
resolve: { resolver: myCustomResolver },
children: [
{
path: '',
children: [
{
path: 'users',
loadChildren: 'app/users.module#UsersModule'
},
{
path: 'articles',
loadChildren: 'app/articles.module#ArticlesModule'
}
]
},
// this is the new component
{ path: 'stories', component: StoriesComponent }
]
}
]
我在模块和新组件中对 activatedRoute
使用相同的方法:
export class StoriesComponent implements OnInit {
private routeData;
constructor(private activatedRoute: ActivatedRoute) {}
ngOnInit() {
// this is returning an empty object '{}'
this.activatedRoute.data.subscribe(data => {
this.routeData = data;
});
}
}
如有任何帮助,我们将不胜感激。
data: Observable<Data> - An observable of the static and resolved data of this route.
在提供的路由配置中没有静态数据或dynamic data resolver。这就是为什么 data
是一个空对象。
您想访问子项中的父项解析数据。试试这个。
this.routeData = this.activatedRoute.parent.snapshot.data;
我有一个路由模块,它为许多其他模块设置了路由,我已经设法使用 activatedRoute
没有问题。但是我现在创建了一个单一组件,当我尝试使用 activatedRoute
.
路由模块看起来像这样:
const routes = [
{
path: 'path',
component: myComponent,
resolve: { resolver: myCustomResolver },
children: [
{
path: '',
children: [
{
path: 'users',
loadChildren: 'app/users.module#UsersModule'
},
{
path: 'articles',
loadChildren: 'app/articles.module#ArticlesModule'
}
]
},
// this is the new component
{ path: 'stories', component: StoriesComponent }
]
}
]
我在模块和新组件中对 activatedRoute
使用相同的方法:
export class StoriesComponent implements OnInit {
private routeData;
constructor(private activatedRoute: ActivatedRoute) {}
ngOnInit() {
// this is returning an empty object '{}'
this.activatedRoute.data.subscribe(data => {
this.routeData = data;
});
}
}
如有任何帮助,我们将不胜感激。
data: Observable<Data> - An observable of the static and resolved data of this route.
在提供的路由配置中没有静态数据或dynamic data resolver。这就是为什么 data
是一个空对象。
您想访问子项中的父项解析数据。试试这个。
this.routeData = this.activatedRoute.parent.snapshot.data;