我正处于这条活跃路线上:
companies/:id/departments
现在我想用这条路线创建一个新的部门:
companies/:id/departments/create
我通过routeLink更改此路线的HTML是:
<button [routerLink]="['companies', id, 'departments','create']">create</button>
单击routerLink时出现此错误消息:
Error: Cannot match any routes: 'companies/1/departments/companies/1/departments/create'
很明显,我的routerLink路由被附加到活动路由。
我应该如何重写routerLink以使其正常工作?
路由器是否认为创建路由是子路由?它不是!
答案 0 :(得分:2)
如何将其更改为:
foreach (var item in DepartTimes)
{
MAPS objMAPS = new MAPS();
objMAPS.LocationName = item["name"].ToString();
objMAPS.Latitude = item["latitude"].ToString();
objMAPS.Longitude = item["longitude"].ToString();
lstMarkers.Add(objMAPS);
}
答案 1 :(得分:2)
如果第一个段以/开头,路由器将查找路由 从应用程序的根目录。
如果第一段以./开头,或 不是以斜线开头,路由器将改为查看 当前激活路线的孩子。
如果是第一段 从../开始,路由器将上升一级。
基本上,您需要做的就是在第一个段之前添加正斜杠:
<button [routerLink]="['/companies', id, 'departments','create']">create</button>