路由器可以激活超过 1 个守卫
Router canActivate with more than 1 guard
angular(v 4.1.1) 路由器 canActivate
是否具有多个功能
{
path: '',
component: SomeComponent,
canActivate: [guard1, guard2, ...]
}
这样的东西应该有用吗?如果不是,如果它只需要一名警卫,他们为什么会在列表中
因为我有类似的东西,即使guard1
returns false
,guard2
仍然会被执行。
提前致谢
Angular 4.1.1
这应该可行,但我相信守卫是并行执行的,而不是按顺序执行的。所以第二个不会等到第一个 return 一个值。如果你的守卫是同步的,这应该不会真正影响你,但如果他们是异步的,你将 运行 进入这个 "issue".
如果你需要你的守卫相互依赖,你可以将检查的公共部分分开,你的所有守卫都可以调用该逻辑。但我认为在大多数情况下,这甚至是不必要的,因为如果只有其中一个失败,路由就不会被激活。
angular(v 4.1.1) 路由器 canActivate
是否具有多个功能
{
path: '',
component: SomeComponent,
canActivate: [guard1, guard2, ...]
}
这样的东西应该有用吗?如果不是,如果它只需要一名警卫,他们为什么会在列表中
因为我有类似的东西,即使guard1
returns false
,guard2
仍然会被执行。
提前致谢
Angular 4.1.1
这应该可行,但我相信守卫是并行执行的,而不是按顺序执行的。所以第二个不会等到第一个 return 一个值。如果你的守卫是同步的,这应该不会真正影响你,但如果他们是异步的,你将 运行 进入这个 "issue".
如果你需要你的守卫相互依赖,你可以将检查的公共部分分开,你的所有守卫都可以调用该逻辑。但我认为在大多数情况下,这甚至是不必要的,因为如果只有其中一个失败,路由就不会被激活。