目前,我的文件夹结构如下:
D:.
| app.html
| app.js
+---calendars
| calendar-router.html
| calendar-router.js
| details.html
| details.js
|
+---organizations
| service.js
|
\---users
details.html
details.js
users-router.html
users-router.js
我想在 calendars / details.html 文件中为 users / details.html 文件创建 href 链接。< / p>
<a route-href="route: userDetails; params.bind: { id: calendar.owner.id }">details</a>
我的users-router.js有此条目。
{ route: 'details/:id', name: 'userDetails', moduleId: './details', title: 'User details', href: 'details/:id' }
但不知何故,我无法这样做,并且收到错误 [route-href]错误:名称为&#39; userDetails&#39;无法找到。检查路由的配置中是否已指定name: 'userDetails'
。
我尝试在 calendar / details.js 中注入 app.js 和 users-router.js 路由器,我可以看到 AppRouter 已填充,但 UsersRouter 不是。
我有什么方法可以做到这一点吗?
答案 0 :(得分:0)
您获得未知路由名称的原因是因为Aurelia并不急于加载子路由器。
app.js中的AppRouter不会确认子路由器,直到导航到用户路由为止。
最简单的解决方案是在app.js中包含路线。那么你现有的route-href就可以了。
您可以在github上查看此问题以获取其他一些解决方案。 https://github.com/aurelia/router/issues/90