4

我正在使用 Angular 5。我在 app.component 中有一个。我正在动态路由到特定组件,例如“仪表板”。这个仪表板组件有一个命名的路由器出口和一组子组件。现在我必须通过路由器导航从仪表板组件更改命名路由器插座的内容。我试过跟随导航

1. this.router.navigate([{ outlets: { right: 'temp1' }}], {redirectTo: this.activatedRoute})
2. this.router.navigate(['/dashboard',{ outlets: { right: 'temp1' }}])

但两者都失败并出现以下错误

ERROR Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'dashboard'

当我更改浏览器网址时,它可以工作但无法通过导航加载。我认为是因为父母。任何帮助,将不胜感激。

4

2 回答 2

1

你的 app.router 怎么样?当它调用路由时,你得到的 url 是什么。我努力理解 routerlink 中的相对路由。在两天内,我可以向你发送对我有用的东西,但要远离我的电脑自动取款机。

如果相对地址错误,您可以使用 ../dashboard 向上一个目录。或者,如果您有同名的 routinga,您可能需要确保并在 app.routing 中将所需的 pathMatch 设置为 full。

this.router.navigate([{ outlets: { right: [ 'dashboard','temp' ] }}]); 像这样的东西应该工作。

https://www.concretepage.com/angular-2/angular-2-4-named-router-outlet-popup-example

于 2018-01-01T19:06:00.553 回答
0

this.router.navigate([{ outlets: { primary: 'dashboard', right: 'temp1' }}])

这样的事情应该有帮助

于 2020-02-18T12:38:11.493 回答