2012-01-21 6 views
14

Czy mogę używać wielu routerów w backbone.js, które nie zakłócają się nawzajem, bez żadnych problemów? Czy jest coś, o co powinienem się martwić? PróbkaWiele routerów z backbone.js

Kod:

myapp.routers.main = Backbone.Router.extend({ 
    routes : { "": "index" }, 
    index : function() { console.log("routed by main router");}  
}); 

myapp.routers.another = Backbone.Router.extend({ 
    routes : { "notmain": "index" }, 
    index : function() { console.log("routed by another router");}  
}); 

mainrouter = new vaikava.routers.main; 
notmainrouter = new vaikava.routers.another; 
Backbone.history.start(); 
+0

Najprostszym sposobem udzielenia odpowiedzi na to pytanie jest wypróbowanie go i sprawdzenie, czy działa. O ile mi wiadomo, nie powinno być problemu z tym, co nakreśliłeś. – nrabinowitz

+0

Próbowałem tego sam - bez błędów, ale ponieważ jest to moja pierwsza prawdziwa aplikacja szkieletowa i przeczytałem, że mogą występować problemy z wieloma routerami, chciałem zapytać tutaj – Industrial

Odpowiedz

8

Tak, to działa dobrze; jedyny raz, kiedy masz problem, to jeśli mają sprzeczne trasy. There is a workaround sprawia, że ​​działa to również w ten sposób, ale to trochę hack.

Dopóki nie będziesz mieć wielu routerów próbujących obsługiwać tej samej trasy, powinieneś być w porządku.

+0

Hi Taxillian. Wielkie dzięki za odpowiedź. Czy możesz sprawdzić dla mnie inne powiązane pytanie 'backbone.js'? http://stackoverflow.com/questions/8957543/working-with-state-in-backbone-js-logging-in-a-ser – Industrial