Dans une application BackboneJS, si vous avez besoin d’écouter l’événement route déclenché par votre router, pensez à procéder dans le bon ordre :
// 1 - Instanciation du Router App.router = new Router(); // 2 - Instanciation des écouteurs App.menu = new MenuView(); // écoute l'événement "route" du router // 3 - Démarrage de la navigation App.history = Backbone.history.start();
Le router ne démarre pas au moment de son instanciation. En réalité, c’est l’historique qui démarre le router ( Backbone.history.start ).
Donc si vous lancez l’historique avant d’instancier vos écouteurs, vous n’écouterez pas l’événement route déclenché au chargement de votre application, mais seulement l’événement route déclenché aux changements de route, lors de la navigation des utilisateurs.