有没有办法从 CanActivate 导航到其他视图?

Is there a way to navigate to other view from CanActivate?

我创建了以下注释:

@CanActivate(
(next,prev)=> {
    var neededPermission = ["PERMISSION"];
    var userPermissions = JSON.parse(sessionStorage.getItem('permissions'));
    if (userPermissions && !_.isEmpty(_.intersection(userPermissions, neededPermission))) {
        return true
    }else {
//Navigate to No Permission state?
        return false;
    }
}

)

如果函数的结果是 false?

,我想知道如何将用户导航到其他页面

Plunker linked to in this comment 展示了如何做到这一点

Protected 组件有一个 @CanActivate(...) 装饰器调用 isLoggedIn() 调用 router.navigate().

这个 Plunker 演示了如何在 @CanActivate()

中使用 DI