Angular2 路由。请求的路径在索引 1 处包含未定义的段
Posted
技术标签:
【中文标题】Angular2 路由。请求的路径在索引 1 处包含未定义的段【英文标题】:Angular2 Routing. The requested path contains undefined segment at index 1 【发布时间】:2017-09-03 12:02:54 【问题描述】:我在 Angular 2 中遇到路由问题。 我将 router.navigate 从操作调用到数据表中。罕见的是,有时当我单击调用此行的按钮时,它可以正常工作,有时却不行。
this.router.navigate(['edit', id], relativeTo: this.activatedRoute);
显示检查器元素的错误是:
The requested path contains undefined segment at index 1
我正在使用 Angular2、DataTables 和 Webpack
【问题讨论】:
更新 -> 问题是有时读取 id 有时没有。所以问题出在数据表上。 【参考方案1】:我遇到了同样的问题。基本原因是,它没有找到该项目的链接(网址)。即
之前
e2eId: '1',
title: 'myTitle',
link: null,
icon: 'icon',
isActive: false,
之后
e2eId: '1',
title: 'myTitle',
link: '/somelinehere',
icon: 'icon',
isActive: false,
这个问题也可能由于 id 的 Null 值或其他具有 null 值的东西而出现。
【讨论】:
【参考方案2】:我遇到了同样的问题。当我检查传递给导航函数的值时,我发现我的 url 未定义。实际上,主要问题是我试图在数据准备好之前导航。您必须首先检查您的数据是否已准备好传递。就像等待一个事件或订阅另一个回调一样。
【讨论】:
【参考方案3】:可能你的id
传入navigate
是undefined
或null
.console 你的id 并修复然后传入导航。我有同样的问题并修复它。
【讨论】:
以上是关于Angular2 路由。请求的路径在索引 1 处包含未定义的段的主要内容,如果未能解决你的问题,请参考以下文章