У меня есть settings
знак маршрут сконфигурирован в shell.js:Splat маршрут не найден (DurandalJS)
router.map([
{ route: 'settings*child', moduleId: 'views/settings/main', nav: true }
]).buildNavigationModel();
И внутри файла views/settings/main.js
я создал дочерний маршрутизатор:
var childRouter = router.createChildRouter().makeRelative({
moduleId: 'views/settings',
fromParent: true
}).map([
{ route: 'users', moduleId: 'child/users/list', nav: true },
{ route: 'users/:id', moduleId: 'child/users/view', nav: false },
]).buildNavigationModel();
структура папок выглядит так:
/views
-/settings
--settings.js
--settings.html
--/child
---/users
----list.js
----list.html
----view.js
----view.html
Проблема я столкнулся это:
Когда я пытаюсь перейти на страницу настроек (#settings) с другой страницы маршрута родительском он покажет мне сообщение об ошибке в консоли:
Route Not Found settings undefined
Но настройки страница все еще отображается со всем списком дочернего маршрутизатора, который я создал.
Далее, я пытаюсь перейти к #settings/users
и #settings/users/{id}
, и он работает без проблем или ошибок, хотя попробуйте использовать его с другой родительской страницы.
Я думаю, что проблема знак маршрут всегда ожидал чего-то будет впереди хэша что-то вроде #settings/users
и НЕ Примет #settings
без ребенка?
Или я пропустил что-то на моей реализации?
Любая помощь или предложения были бы оценены!
Спасибо!
Привет @patel, К сожалению, у меня нет возможности проверить свои предложения еще Теперь. Но я считаю, что это ответ. Я пропустил создание пустого маршрута {route: '', moduleId: 'main', nav: true}, Спасибо! –
без проблем приятель, рад, что я мог бы помочь :) –