【发布时间】:2017-11-06 13:45:08
【问题描述】:
我有两个 Guard,Guard1 和 Guard2。 Guard1 返回一个 Observable,Guard2 返回布尔值。
canActivate: [Guard1, Guard2]
假设Guard2会返回false,Guard1的请求会自动取消吗?还是无论如何都会执行调用?
【问题讨论】:
-
这取决于调用的顺序
-
我认为 Guard1 是先执行的,但它是异步的。然后Guard2是假的。我可以在开发者工具中看到 xhr 请求被取消,但我不知道为什么。
-
你是在告诉守卫异步调用被取消了?
-
是的,通话被取消
-
那么我猜看守二,即布尔值首先被执行,然后该调用被取消,因为守卫二未被调用,不确定需要检查
标签: angular angular2-observables angular2-guards canactivate