Roteamento em Backbone.js / Marionette.js - sem hashtags, lista de rotas e sub-roteadores

Eu tenho três perguntas sobre o roteamento em Backbone.js / Marionette.js:

1) Como posso obter uma lista de todas as rotas que os roteadores do meu aplicativo registraram?

Por exemplo, para Express.js (em Node.js) seriaapp.routes.

Eu estou tentando fazer o mesmo com Backbone.js / Marionette.js, mas não encontrei nenhuma propriedade ou método que fez isso.

2) Eu quero limpar meus URLs e remover a hashtag "#" na frente deles, eu sei que eles acionam os roteadores então como posso conseguir fazer isso?

Eu encontrei o seguinte script que protótipos do roteador Backbone, mas é mais um truque do que uma solução estável:Roteamento de backbone simples sem URLs hash

3) É possível ter sub-roteadores em Backbone.js / Marionette.js?

O que quero dizer com sub-roteador é um roteador que manipula apenas parte de um URL, por exemplo:

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

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

Isso classificaria meus URLs um pouco mais, deixando-me definir as rotas principais no AppRouter e todas as sub-rotinas (parte após a segunda barra "/") em sub-roteadores específicos da categoria.

Então, para o seguinte URL: "hostname / articles / science", o processo de roteamento seria algo como isto:

1) passe "/ articles / science" para AppRouter2) AppRouter divide o URI e pega a parte "/ articles"3) AppRouter encontra a rota "/ artigos" registrada4) AppRouter reconhece que MyArticleRouter está vinculado a esse elemento URI5) O AppRouter encaminha o roteamento para esse roteador e somente passa o elemento "/ science" como rota6) MyArticleRouter rotas "/ science" para o someMethod () e executa

Agradeço antecipadamente !

questionAnswers(1)

yourAnswerToTheQuestion