Pergunta

Não consigo executar o código abaixo porque roteador é indefinido na minha opinião.No entanto, estou lutando para entender onde realmente defini var router = new MyRouter(); minha visão, início do aplicativo controlador, etc?

estou a usar marionete e meu roteador parece corresponder automaticamente aos meus controladores.

success: function (page) {
   id = page.get('id')
   router.navigate('page/' + id, {trigger: true});
}
Foi útil?

Solução

Se você não declarou router atributo, você não tem um disponível (ele não é criado automaticamente nem nada), daí o undefined valor.

Para navegar para uma determinada página, você também pode usar Backbone.history.navigate (ver por exemplo https://github.com/davidsulc/marionette-gentle-introduction/blob/master/assets/js/app.js).

Além disso, você pode querer reconsiderar o uso do trigger: true opção, pelas razões explicadas aqui (capítulo de roteamento) na amostra grátis para meu livro sobre marionete.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top