Я пытаюсь сделать дочерний маршрутизатор из дочернего маршрутизатора в Durandal.js, но получаю случайные глупые ошибки (например, 404 и т. д.). Это проблема Дюрандаля (я имею в виду, если у него нет поддержки подмаршрутизации третьего уровня) или, может быть, проблема с моим кодом?
Спасибо
В любом случае, я собираюсь включить свой код здесь:
возвращение оболочки
return {
router: router,
activate: function () {
return router.map([
{
route: ['', 'Main'],
moduleId: 'Main/index',
nav: false
},
{
route: 'Main*details',
moduleId: 'Main/index',
hash: '#/Main/',
title: 'Main',
nav: false
}
]).buildNavigationModel()
.activate();
}
};
возвращение дочернего элемента 2-го уровня
var mainRouter = router.createChildRouter()
.makeRelative({
moduleId: 'Main',
fromParent: true
}).map([
{
route: ['', 'Dashboard'],
moduleId: 'Dashboard/index',
nav: false
},
{
route: 'Dashboard*details',
moduleId: 'Dashboard/index',
hash: '#/Main/Dashboard',
title: 'Dashboard',
nav: true
}
]).buildNavigationModel();
return {
router: mainRouter
}
возвращение дочернего элемента 3-го уровня
var dashboardRouter = router.createChildRouter()
.makeRelative({
moduleId:'Dashboard',
fromParent: true
}).map([
{
route: ['', 'Product'],
moduleId: 'Product/index',
hash: '#/Main/Dashboard/Product',
title: 'Product',
nav: true
}
]).buildNavigationModel();
return {
router: dashboardRouter
}