相关疑难解决方法(0)

如何在Angular等待守卫

如果我在路线上指定三名警卫,似乎所有警卫都会立即进行评估.

{path: '', component: OptionsComponent, canActivate: [ GuardOne, GuardTwo, GuardThree]}

我遇到的问题是我不希望GuardTwo在GuardOne完成之前运行.有没有办法实现这个目标?

javascript rxjs rxjs5 angular

7
推荐指数
1
解决办法
2237
查看次数

按顺序执行多个异步路径保护

我知道当canActivate函数返回一个简单的时boolean,角度路径保护以指定的顺序执行,但是,如果守卫返回类型Observable<boolean>Promise<boolean>

路线示例:

{
    path: 'confirm',
    canActivate: [AuthGuard, SessionExpiredAuthGuard, CheckoutAuthGuard],
    component: CheckoutReviewOrderComponent
},
Run Code Online (Sandbox Code Playgroud)

SessionExpiredAuthGuard和CheckoutAuthGuard都返回类型Observable<boolean>.我不希望在SessionExpiredAuthGuard完成从异步http请求中检索数据之前执行CheckoutAuthGuard.

有没有办法强制这些异步防护按顺序执行?

angular angular-router-guards angular-observable

3
推荐指数
1
解决办法
2409
查看次数