Angular5带命名router-outlet的子路由链接创建问题
解决Angular 5命名路由出口的子路由链接问题
嘿,我来帮你搞定这个指向CreatePostComponent的链接问题!根据你的路由配置,我们需要正确使用Angular的routerLink指令来生成/admin/(admin:news/new-post)这个路径。
正确的模板链接写法
直接在模板里使用数组形式的routerLink,结合命名出口的配置:
<a [routerLink]="['/admin', { outlets: { admin: ['news', 'new-post'] } }]">创建新文章</a>
写法解释
这个routerLink的结构拆解一下:
'/admin':指定根级的父路由路径{ outlets: { admin: ['news', 'new-post'] } }:这部分是命名出口的路由配置,告诉Angular在名为admin的router-outlet中加载news/new-post这条子路由,最终生成你需要的/admin/(admin:news/new-post)路径。
额外注意点
要确保你的NewsComponent模板里包含一个默认的(非命名)router-outlet,这样CreatePostComponent才能被正确渲染出来:
<!-- NewsComponent 的模板 --> <div class="news-container"> <!-- 你的新闻列表等内容 --> <router-outlet></router-outlet> </div>
你的现有路由配置是没问题的,只要用上上面的routerLink写法,就能正确跳转到目标组件啦!
内容的提问来源于stack exchange,提问作者Volodymyr Humeniuk
相关产品推荐
相关产品推荐

