dlaczego trasa sieci szkieletowej wymaga trasy domyślnej
Tworzę przypadek testowy z backbone.js @:http://jsfiddle.net/VWBvs/5/
Trasa jest zdefiniowana jako
<code>var AppRouter = Backbone.Router.extend({ routes: { "/posts/:id" : "getPost", "/download/*path": "downloadFile", "*actions" : "defaultRoute" }, getPost: function(id) { alert(id); }, defaultRoute : function(actions){ alert(actions); }, downloadFile: function( path ){ alert(path); // user/images/hey.gif }, loadView: function( route, action ){ alert(route + "_" + action); // dashboard_graph } }); var app_router = new AppRouter; Backbone.history.start(); </code>
Kiedy zmieniam funkcję
<code> defaultRoute : function(actions){ alert(actions); }, </code>
do
<code>defaultRoute : function(actions){ var action = actions }, </code>
wszystkie inne trasy nie będą działać, co oznacza, że nie pojawi się żadne okno dialogowe.
Ale gdy zmieniasz kod, wszystko jest w porządku.
To naprawdę dziwne i sprawia, że jestem zdezorientowany. SOS szczerze ......