我有一个WhatsNew
组件,这是我的路由配置:
@RouteConfig([
{ path: '/whatsnew', name: 'WhatsNew', component: WhatsNew },
])
我在另一条路线和组件中。我的问题是我希望whatsnew
完全呈现,然后路由更改并导航到WhatsNew
。我不希望用户看到渲染页面,怎么做角度2?
答案 0 :(得分:0)
您可以实施CanActivate
生命周期回调。通过这种方式,当对服务器的调用返回到该路由正常或重定向到另一个路由时,您可以将完成的promise返回true。
一个问题是CanActivate
是装饰者而DI不支持装饰者,但您需要获得对服务的引用以进行服务器调用。
This comment包含一个指向Plunker的链接,演示如何将DI与CanActivate
生命周期回调在继续导航之前不会等待解决的承诺存在一些问题。我不记得这是否适用于CanActivate
。在路上还有再次一个新路由器,并且不太可能用旧路由器解决问题。