【发布时间】:2017-04-09 16:05:45
【问题描述】:
从昨天开始就一直在摸不着头脑,不知道如何解决我的问题。我有一个父:仪表板组件,其中包括页眉和下拉列表。我的子组件目前只包含一行:"Child Component! Chosen value from dropdown list: "Some value"". 请看下面的图片。
通信正常,但导航到仪表板时遇到问题。
我的路线如下所示:
{
path: 'admin',
component: AdminComponent,
children: [
{
path: '',
component: AdminComponent,
},
{
path: 'something/:name',
component: TestComponent,
},
]
},
如果我不添加:
{
path: '',
component: AdminComponent,
},
在儿童路线中,我收到错误:
Uncaught (in promise): Error: Cannot match any routes: 'admin'
Error: Cannot match any routes: 'admin'
但这也意味着,当我在子视图中添加它时,父视图会显示两次。
当我从下拉列表中选择一个项目时,这一切都很好,它触发了子视图,视图看起来就像它应该的那样,带有下拉列表的父视图和子文本行。
我已尝试更改儿童路线中的线路:
children: [
{
path: '',
component: AdminComponent,
},
{
path: 'something/:name',
component: TestComponent,
},
]
到:
children: [
{
path: '',
redirectTo: 'admin',
},
{
path: 'something/:name',
component: TestComponent,
},
]
但它不起作用
【问题讨论】:
-
您能否提供一个 Plunker 与您的代码?
-
子路由
component和DashboardComponent一样,不会死循环吧? -
@PankajParkar 路由和组件可以分开看。仅当
DashboardComponent中进行一些重定向时,它应该可以工作。虽然不像预期的那样,但它可以工作;) -
@PierreDuc 明白了,这是我的错误假设。谢谢指正:)
标签: angular typescript routing