在angular2中,我使用的是canActivate,但是当它返回false时,它仍然会进入路径

时间:2016-11-05 16:22:49

标签: angular angular2-routing

在angular2中我使用的是canActivate,但是当它返回false时它仍然会进入路径。

这里的代码如下:

 canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {
        this.isAuthRequired = route.data.isAuthRequired;
        this.isCompanyView = route.data.isCompanyView;

        return this.init();  
  }

此代码根据路由数据返回true或false,例如isAuthRequired等。

这仍然意味着要去路线吗?因为它确实只是显示一个没有控制台错误的蓝屏,这很好,但我希望它重定向到主页或至少留在上一页。

这个功能是如何起作用的,你有什么建议。

1 个答案:

答案 0 :(得分:0)

确保从init()方法返回*m_pBaseboolean。 从init()返回true将导航到选定的路由。 返回false将阻止从当前屏幕导航页面。

如下所示: -

promise

我希望这可以帮到你。