回答
截至2016年5月15日的答案是@CanActivate功能目前未在发布候选版本中实现,除了使用router-deprecated
或切换到备用路由器实施方案(如ngrx
)之外,除了等待外,没有其他任何事情可做。
这里是一个开放的问题,要求的解决方案:https://github.com/angular/angular/issues/8655
这里是一个document它花了年龄找到其中谈到了建议路由器重构(你可以找到在doc @CanActivate提及)。
要使用@CanActivate
需要导入router-deprecated
,而不是router
。
如果您想使用新Router
,
有routerCanDeactivate() lifeCycleHook这可能是更换为@CanActivate
。
唯一的区别是,现在您将允许/不允许在前一条路线上导航,而不是下一条。
你确定'CanDeactivate'可以代替'CanActivate'吗?我认为'CanActivate'在新路由器中尚未实现。 –
@GünterZöchbauer,no。我怎么能确定。我在回答中表达了我的疑问。也许你是对的,但我真的不知道。 –
- 1. canactivate guard angular 2
- 2. Angular 2 RC5&@ angular/router 3.0.0-rc.1无效配置或错误?
- 3. Angular 2 CanActivate不起作用
- 4. 角2 RC.1 routerOnActivate
- 5. 使用Angular Material 2 Tabs Component with Angular 4.0.0-rc.1
- 6. Angular 2 routing-deprecated:如何检测CanActivate?
- 7. CanActivate在Angular 2中返回undefined
- 8. Angular 2 RC 5 NGModule Pass Param
- 9. 角2 RC 1在IE 9
- 10. 角2 - 内canActivate
- 11. Angular 2 RC5与路由器3.0.0.rc.1问题与http得到
- 12. Angular 2 rc.1和PhpStorm 2016.1.2未解决变量
- 13. Angular 2 Rc.1路由器不加载“/”组件
- 14. Angular 2 CustomReqeuestOptions merge()因为Angular 2 RC.5不起作用
- 15. 无法更新到Angular2 RC @ angular @ 2.0.0-rc.1
- 16. Angular 2 RC引导应用程序5
- 17. Angular 2 RC 4编译器cli错误
- 18. Angular 2 RC 5全球供应商
- 19. Angular 2 RC.5 FormsModule不存在
- 20. Angular 2 RC 4 Http post not firing
- 21. Angular2 RC.1注入
- 22. Angular 2 rc.5从rc.4更新后无法刷新页面
- 23. Angular 2 - 如何从canactivate gaurd中的url导航
- 24. 如何在Angular 2 Ionic 2 RC中使用手机蒙版2
- 25. Angular 2 CanActivate作为承诺,解决从另一个组件
- 26. Angular 2从CanActivate服务导航到根目录
- 27. 在Angular 2中添加API调用canActivate AuthGuard
- 28. canActivate返回false并且仍然进入屏幕Angular 2
- 29. 从.NET MVC 1迁移到MVC 2 RC
- 30. 如何扩展用于认证的Angular 2 RC 4的RouterOutlet
真的!非常感谢! – bucicimaci