tutorial pixar pelicula mario fnafhs fnaf anime backbone.js marionette

backbone.js - pixar - ¿Cuál es la ventaja de Marionette AppRouter+Controller sobre Backbone.Router?



marionette pixar (2)

A mi entender, la diferencia es que las funciones de devolución de llamada a eventos en un AppRouter deben existir en el Controller , en lugar del mismo objeto de enrutador. Además, existe una relación de uno a uno entre dichos AppRouter y Controladores, todo mi código del Enrutador ahora se mueve al Controlador, ¿no veo mucho en eso? Entonces, ¿por qué usarlos? ¿Debo estar perdiendo algo?


Hice alguna anulación para el enrutador. Y actualmente utilícelo de esta manera (como Chaplin): https://gist.github.com/vermilion1/5525972

appRoutes : { // route : controller#method ''search'' : ''search#search'' ''*any'' : ''common#notFound'' }, initialize : function () { this.common = new Common(); this.search = new Search(); }


La forma en que lo veo es separar las preocupaciones:

  • el controlador realmente hace el trabajo (reúne los datos, crea una instancia de la vista, los muestra en regiones, etc.) y puede actualizar la URL para reflejar el estado de la aplicación (por ejemplo, el contenido mostrado)
  • el enrutador simplemente activa la acción del controlador según la URL que se ingresó en la barra de direcciones

Básicamente, si está en la página de inicio de su aplicación, debería funcionar bien sin necesidad de enrutadores: sus acciones (por ejemplo, al hacer clic en una entrada del menú) simplemente activan las distintas acciones del controlador.

Luego, agrega un enrutador que dice "si se llama a esta URL, ejecute esta acción del controlador". Y dentro de su controlador usted actualiza la URL mostrada con navigate("my_url_goes_here") . Observe que NO pasa el trigger: true .

Para obtener más información, consulte la publicación del blog de Derick http://lostechies.com/derickbailey/2011/08/28/dont-execute-a-backbone-js-route-handler-from-your-code/ (párrafo "The" AHA! "Momento sobre el segundo argumento de Router.Navigate")

También he cubierto el tema en más detalle en la vista previa gratuita de mi libro sobre Marionette. Consulte las páginas 32-46 aquí: http://samples.leanpub.com/marionette-gentle-introduction-sample.pdf