为新路由器设置身份验证Angular 2(> = rc1)

时间:2016-05-09 09:42:31

标签: angular angular2-routing

我刚刚为我的angular 2应用程序启动并运行了身份验证,但我现在正在尝试升级到新路由器,删除路由器已弃用。问题是我的策略不再适用了。

在旧路由器中,我扩展了路由器插座以检查URL是否能够激活。如果不是,我只是重定向到我的登录页面。

然而,在新的路由器中,路由器插座不再存在。什么是新的最佳策略?

1 个答案:

答案 0 :(得分:1)

一种选择是订阅路由器以评估用户是否在路由更改时登录,所以在AppComponent中就是这样:

constructor (private _router: Router) {} 

ngOnInit(){
  this._router.subscribe(
    next => {
      if (!userIsLoggedInOrWhatever) {
        this._router.navigate(['Login']);
      }
    }
  )    
}

https://angular.io/api/router/Router