Angular2 路由重定向与 routeParams

标签 angular angular2-routing

有没有办法访问 redirecTo-Statement 中的 routerParams?

我想将“Order”路由的 orderId 传递给“OrderDashboard”路由,但我不知道该写什么来代替 ???

如果我将 ??? 替换为 3 一切正常(以防用户只对订单号 3 感兴趣;-))

{path: '/:orderId', name: 'Order', redirectTo: ['OrderDashboard', {orderId:???}]} {路径:'/:orderId/dashboard',名称:'OrderDashboard'}

最佳答案

派对迟到了,但无论如何,

router.config时,我找不到任何访问routeParams的引用,
但是您仍然可以通过使用其中一种技术实现相同的行为


<强>1。使用 Same Component

定义两条路由

(不完全一样url地址栏会不一样)

{path: '/:orderId', name: 'Order', component: OrderDashboard}
{path: '/:orderId/dashboard', name: 'OrderDashboard', component: OrderDashboard}

<强>2。使用一次性组件作为代理

{path: '/:orderId', name: 'Order', component: OnlyToRedirect}
{path: '/:orderId/dashboard', name: 'OrderDashboard', component: OrderDashboard}

export class OnlyToRedirect{
  constructor(routeParams: RouteParams, router: Router){
    router.navigate(['OrderDashboard', {orderId: routeParams.params}])
  }
}

希望这有效:)

关于Angular2 路由重定向与 routeParams,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34908917/

相关文章:

node.js - 未捕获的TypeError : Cannot set property 'rowsdata' of undefined

javascript - 无法读取未定义 Angular 属性 '0'

html - 在 Angular 中滚动浏览器页面时修复表格 thead

Angular 2 this.router.events.subscribe 在刷新或输入 url 时不起作用

angular - 根据 Angular 2 中的条件在组件中加载不同的模板

javascript - Angular 2 : Error during evaluation of click

Angular:如何仅在应用程序内部返回

angular - ngrx Store - 如何在 UI 中管理潜在的持久操作

Angular 2 - 在继续之前等待 promise

Angular2 - ngOnDestroy() 未在类似路线上调用