角2 RC4路由器得到预定航线之前激活
问题描述:
我试图确定的路线是它被激活之前,所以我可以缓存它和重定向用户返回到该路由他们登录后。角2 RC4路由器得到预定航线之前激活
在旧的测试版路由器我能够在激活挂钩中调用ComponentInstruction.routeName
,但在新的canActivate()
后卫中,我没有看到在激活前访问预期路线的方法。
当用户在我的应用程序中点击navagtion按钮时,我可以将共享服务中的预期路线存储起来,但是当他们在地址栏中输入URL时怎么办?
答
从角路由器源文件:
export interface CanDeactivate<T> {
canDeactivate(component: T,
route:ActivatedRouteSnapshot,
state:RouterStateSnapshot): Observable<boolean> | boolean;
}
ActivatedRouteSnapshot
对象(路线)具有url
属性 - 另一种类型的阵列中,在第一对象属性path
您的电流路径。
同样在RouterStateSnapshot
对象(状态)只有字符串属性url
与当前路径,但与/
它的前缀。
简单地传递这些参数你canDeactivate法)
与canActivate方法 –
是的,当然,这两种方法的作品也适用 –