【发布时间】:2017-06-12 14:56:22
【问题描述】:
我正在尝试将我的路由参数放入解析中。 但是它不包含参数,但是当我从组件内部使用 activateRoute 时,它确实可以工作。我认为这是因为在解决方案中路线还没有改变。我该如何让它发挥作用?
post.resolve.ts
@Injectable()
export class PostResolver implements Resolve<any> {
slug: any;
constructor(
private activatedRoute: ActivatedRoute,
private memoryService: MemoryService,
) {}
resolve() {
console.log(this.activatedRoute);
this.activatedRoute.params.subscribe(params => {
this.slug = params['slug'];
console.log(this.slug);
return this.memoryService.getPost(this.slug);
})
}
}
app.route.ts
{
path: 'post/:slug',
component: PostComponent,
data: {title: 'Post'},
resolve: {
post: PostResolver
}
},
【问题讨论】: