Angular2路由,父子-路由组件与视图组件
我正在开发一个Angular2应用程序,目前我们正在进行beta-17测试,因为候选版本不再支持捆绑,并且破坏了一切(这是另一回事) 我理解,父路由和子路由之间的关系是,如果子路由想要有路由,则子路由必须是“路由组件”。这是有道理的,对吧——但如果我想有一个父“路由组件”,它有一个子“视图组件”,充当子“路由组件”的父级,该怎么办 我有一个顶级应用程序,它有两条路线,Angular2路由,父子-路由组件与视图组件,angular,angular2-routing,Angular,Angular2 Routing,我正在开发一个Angular2应用程序,目前我们正在进行beta-17测试,因为候选版本不再支持捆绑,并且破坏了一切(这是另一回事) 我理解,父路由和子路由之间的关系是,如果子路由想要有路由,则子路由必须是“路由组件”。这是有道理的,对吧——但如果我想有一个父“路由组件”,它有一个子“视图组件”,充当子“路由组件”的父级,该怎么办 我有一个顶级应用程序,它有两条路线,/plan/:id/..和/design/:id/..路线。如您所见,我希望这些组件可以作为其他“路由组件”的父级。假设我们在“设
/plan/:id/..
和/design/:id/..
路线。如您所见,我希望这些组件可以作为其他“路由组件”的父级。假设我们在“设计”路线中,我们尝试导航到NavAndBodyComponent
中定义的子路线,它不工作,也不会抛出错误
我相信这是因为我有一个父“路由组件”,它有一个子“视图组件”,它有一个嵌套的“路由组件”-我如何在不改变这个层次结构的情况下解决这个问题
视图组件按预期加载:
URL:localhost:5000/design/10
但当我尝试导航到嵌套的子路由时,URL会更改为
URL:localhost:5000/型号
我想要(并且期望):
URL:localhost:5000/design/10/model
更新
这里有一个非常详细的 该问题是由于在根组件以外的组件上添加了
路由器\u提供程序造成的
如何防止每次激活路由时添加动态添加的路由请参见是否可以创建一个插入器。我发现很难理解你想要完成什么。如果我理解这个问题,那么我想中间组件只有一条路径,路径为/…
和使用默认值:true
和
,应该可以满足您的需要。@GünterZöchbauer我似乎根本无法让plunker使用beta.17和路由。angular2 beta.17 plunker有什么好的起点吗?只需将链接发布到你拥有的plunker。我会看一看,然后试着让它工作。@GünterZöchbauer这个劫掠者现在正在工作。请检查这是否是您现在想要的useAsDefault
不受尊重,我必须手动选择“Model”--我如何修复它?实际上我不知道。我自己也没用过这么多。新的路由器也不一样,因此我不想再花太多时间研究旧的路由器了。(新路由器还没有useAsDefault
)。我不确定是否有办法使useAsDefault
使用动态配置的路由。也许可以静态添加默认路由?
.
├── app.component // Has two child routes, both are "view components"
├── plan.component
└── design.component // View component, route "/design/:id/..."
├── header.component
├── nav-and-body.component // Routing component
└── footer.component