Маршрутизация в Backbone.js / Marionette.js - без хэштегов, списка маршрутов и суб-маршрутизаторов

У меня есть три вопроса о маршрутизации в Backbone.js / Marionette.js:

1) Как я могу получить список всех маршрутов, которые зарегистрировали маршрутизаторы моего приложения?

Например, для Express.js (в Node.js) это будетapp.routes.

Я пытаюсь сделать то же самое с Backbone.js / Marionette.js, но не могу найти свойство или метод, который это сделал.

2) Я хочу очистить свои URL-адреса и удалить перед ними хештег «#», я знаю, что они запускают маршрутизаторы, так как мне это сделать?

Я нашел следующий скрипт, который создает прототип Backbone-маршрутизатора, но это скорее взлом, чем стабильное решение:Простая магистральная маршрутизация без хеш-адресов

3) Возможно ли иметь суб-маршрутизаторы в Backbone.js / Marionette.js?

Под под маршрутизатором я подразумеваю маршрутизатор, который обрабатывает только часть URL-адреса, например:

var AppRouter = Backbone.Router.extend({
    routes: {
        'articles' : 'MyArticleRouter'
    }
});

var MyArticleRouter = Backbone.Router.extend({
    routes: {
        'science' : 'someMethod',
        'literrature' : 'someOtherMethod'
    }
});

Это немного классифицировало бы мои URL-адреса, позволяя мне определять основные маршруты в AppRouter и все подчиненные маршруты (часть после второй косой черты "/") в специфичных для категории суб-маршрутизаторах.

Таким образом, для следующего URL: «имя хоста / статьи / наука», процесс маршрутизации будет выглядеть примерно так:

1) передать "/ статьи / наука" в AppRouter2) AppRouter разбивает URI и принимает часть «/ article»3) AppRouter находит зарегистрированный маршрут "/ статьи"4) AppRouter распознает, что MyArticleRouter связан с этим элементом URI5) AppRouter перенаправляет маршрутизацию на этот маршрутизатор и передает только элемент "/ science" в качестве маршрута.6) MyArticleRouter направляет "/ science" к someMethod () и запускает его

Заранее спасибо !

Ответы на вопрос(1)

Ваш ответ на вопрос