2017-04-16 41 views
0

目前,我有一個文件夾結構如下:有沒有什麼方法可以在Aurelia 1.1.2中使用route-href構造跨文件夾路由?

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 

我想在日曆/ details.html文件創建一個鏈接HREF用戶/ details.html文件。

<a route-href="route: userDetails; params.bind: { id: calendar.owner.id }">details</a> 

我的用戶-router.js有這個條目。

{ route: 'details/:id', name: 'userDetails', moduleId: './details', title: 'User details', href: 'details/:id' } 

但不知何故,我不能這樣做,並且得到錯誤[路由的href]錯誤:名爲「爲userDetails」的路由不能被發現。檢查路由配置中是否指定了name: 'userDetails'

我試圖注入兩個app.js用戶-router.js在日曆路由器/ details.js,我可以看到AppRouter填充但UsersRouter是不。

有什麼辦法可以做到這一點?

+0

route-href中的路由參數應該是字符串。你是否已經嘗試過,或者只是在你的問題中錯誤輸入了它? – janmvtrinidad

+0

@janmvtrinidad,這個route-href的整個值是一個字符串。 –

+0

當您嘗試從日曆導航到用戶/詳細信息時,您可以發佈您的app.js'routerConfiguration.map'以及URL瀏覽器中的值嗎? – janmvtrinidad

回答

0

您得到未知路由名稱的原因是因爲Aurelia不會熱切地加載子路由器。

您的app.js中的AppRouter不會配置子路由器,直到用戶路由導航爲止。

最簡單的解決方案是在你的app.js中包含路由。那麼你現有的route-href將會起作用。

你可以在github上檢查這個問題的一些額外的解決方案。 https://github.com/aurelia/router/issues/90

相關問題