我在 Angular 2 中遇到路由问题。我调用 router.navigate 从一个操作导航到一个数据表。罕见的是,有时当我单击调用此行的按钮时,它工作正常,有时则不然。
this.router.navigate(['edit', id], {relativeTo: this.activatedRoute});
显示检查器元素的错误是:
The requested path contains undefined segment at index 1
我正在使用 Angular2、DataTables 和 Webpack
可能您在navigate
中传入的id
undefined
或null
.console 您的 id 并修复然后传入导航 .i 有同样的问题并修复了它。
我遇到了同样的问题。基本原因是,它找不到该项目的链接(url(。即
以前
{
e2eId: '1',
title: 'myTitle',
link: null,
icon: 'icon',
isActive: false,
}
后
{
e2eId: '1',
title: 'myTitle',
link: '/somelinehere',
icon: 'icon',
isActive: false,
}
此问题也可能是由于id的空值或其他具有空值的内容引起的。
我遇到了同样的问题。当我检查传递给导航函数的值时,我发现我的 url 未定义。实际上,主要问题是我试图在数据准备就绪之前导航。您必须先检查数据是否已准备好传递。就像等待一个事件或订阅另一个回调一样。
我最近遇到了类似的问题。这是因为我尝试传递给路由器导航的路由参数为空。