由于一个非常愚蠢的原因,我从今天早上开始就处于一个大问题中。这应该有效,但我不明白是什么阻止了它。无论如何,下面的代码
我的解析器:
export class UserResolver implements Resolve<any> {
constructor(private fakeApi: FakeApiService) { }
resolve():Observable<any> {
console.log('resolver method hit');
return Observable.empty();
}
}
我的模块:
const routes: Routes = [
{path:'',component:UserComponent,resolve:{users:UserResolver}}
]
const leafManifest:IManifestCollection = [
{path:'',component:UserComponent}
]
不要担心服务或调用组件,因为它们甚至不会出现在图片中。我只是在调用这条路线,并且解决方法被击中。但是,resolve 方法并没有被执行,它只是跳转到方法的关闭处,然后返回到调用组件。换句话说,如果我在解析器方法上放置一个调试器,它会被命中但永远不会进入其中。它似乎只是跳过它。
因此,如您所见,它不会在控制台中显示任何消息,例如“解析器方法命中”。
是的,我在模块的提供者中添加了 UserResolver。