javascript – Angular 2 router.navigate
作者:互联网
我正在尝试使用路径和查询参数的混合导航到Angular 2中的路线.
以下是路径是路径最后一部分的示例路由:
{ path: ':foo/:bar/:baz/page', component: AComponent }
试图像这样链接使用数组:
this.router.navigate(['foo-content', 'bar-contents', 'baz-content', 'page'], this.params.queryParams)
我没有得到任何错误,从我能理解的这应该工作.
Angular 2文档(目前)以下为例:
{ path: 'hero/:id', component: HeroDetailComponent }
['/hero', hero.id] // { 15 }
谁能看到我哪里出错了?我在路由器3上.
解决方法:
如果第一个段不以/开头,则它是相对路径. router.navigate需要relativeTo参数进行相对导航
要么让路线绝对:
this.router.navigate(['/foo-content', 'bar-contents', 'baz-content', 'page'], this.params.queryParams)
或者你通过relativeTo
this.router.navigate(['../foo-content', 'bar-contents', 'baz-content', 'page'], {queryParams: this.params.queryParams, relativeTo: this.currentActivatedRoute})
也可以看看
> https://github.com/angular/angular.io/blob/c61d8195f3b63c3e03bf2a3c12ef2596796c741d/public/docs/_examples/router/ts/app/crisis-center/crisis-detail.component.1.ts#L108
> https://github.com/angular/angular/issues/9476
标签:javascript,angular,angular2-routing 来源: https://codeday.me/bug/20190928/1827339.html