Angular 5 router.navigate错误

时间:2017-12-27 11:05:51

标签: router angular5

有一个用户crud页面,当需要保存新用户时,url会更改为用户保存的id参数。我不知道发生了什么,但是当调用this.router.navigate([' / user',user.id])时会发生错误。在路由器和组件的代码之后发生错误。

Url创建新用户 http://localhost:4200/user

更新用户的网址 http://localhost:4200/user/38

//route config
    const routes: Routes = [
  { 
    path: ':id', 
    component: UserComponent,
    resolve: {
      user: UserResolve
    }
  },
  {
    path: '',
    component: UserComponent,
    resolve: {
      user: UserResolve
    }
  }
]


//component
this.router.navigate(['/user', user.id])


//error
ERROR Error: Uncaught (in promise): [object Object]
    at resolvePromise (zone.js:824)
    at resolvePromise (zone.js:795)
    at eval (zone.js:873)
    at ZoneDelegate.invokeTask (zone.js:425)
    at Object.onInvokeTask (core.js:4620)
    at ZoneDelegate.invokeTask (zone.js:424)
    at Zone.runTask (zone.js:192)
    at drainMicroTaskQueue (zone.js:602)
    at ZoneTask.invokeTask [as invoke] (zone.js:503)
    at invokeTask (zone.js:1540)

1 个答案:

答案 0 :(得分:0)

几周前我刚开始学习角度,所以我只是想帮忙。

在您的路由ts文件中,您要链接''到UserComponent,但是您希望路由器在调用路径'/ user'时加载UserComponent。

用户替换空''并告诉我们什么是新的。谢谢!