BackboneJS : écouter le router au chargement de l’application

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.