【发布时间】:2017-12-11 10:48:45
【问题描述】:
我有 2 个角解析器一个接一个地工作。第一个
@Injectable()
export class ChainViewResolver implements Resolve<any> {
constructor(private a: AService) {
}
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<any> {
return this.a.getSome(route.params['id']);
}
}
其次,
@Injectable()
export class DocViewResolver implements Resolve<any> {
constructor(private a: AService) {
}
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<any> {
return this.a.getSome(state.url.split('/')[state.url.split('/').indexOf('id') + 1]).flatMap((chain) => {
return this.a.getSomeAnotherData(route.params['id2']).flatMap(result => {
});
});
}
}
网址看起来像:
/parent_component/:id/children_component/:id
父组件的第一个解析器和子组件的第二个解析器
1) 方法 getSome 它的请求很重,当我的解析器一起工作时,我不想使用它 2 次。
2) 我不想将它写入某个变量或本地存储,因为 getSome 返回的数据经常发生变化,当我使用第一个解析器时,我可能会因此遇到问题
如何将我的数据从第一个解析器传递到第二个解析器?
【问题讨论】:
标签: angular angular-routing resolver