在我的应用程序中定义路由器时,我必须编写一个查询参数,然后在我的应用程序中通过调用ActivatedRoute(为了兼容性问题必须可检索参数)来解释该参数。最近,我不得不定义一些不遵循相同路由逻辑的新子路由。
// Works but no param sent when myParam is selected
{
path: "myParam",
component: "MyComponent"
}, {
path: ":param",
children: [{/* */}]
}
//...
// doesn't work when first guard isn't ok
{
path: ":param",
component: "MyFirstComponent",
canActivate: [myGuardService]
}, {
path: ":param",
canActivate: [myOtherGuardService]
children: [{/* */}]
}
//...
首先,我尝试在通用路由之前定义特定路由,但未发送参数。 然后,我尝试在同一级别上设置一个守卫,但是当第一个后卫不适用于输入时,该路线不再可访问。 这似乎很简单,但我无法找到一种方法来修复它,只需最少的代码更改 谢谢你的帮助
答案 0 :(得分:0)
最后,我将新组件重定向到我在与其他两个组件相同级别声明的新路径。这样,参数总是可以检索的。