这是我的application-router.js
文件,我Backbone.Router
只用几条路线创建对象:
var App = App || {};
App.Router = Backbone.Router.extend({
routes : {
'' : 'showDashboard', // Not shown
'*other': 'showModalError'
},
defaultRoute : function(other) { $('#modal404').modal(); }
});
在主 javascript 文件中application.js
,我想以编程方式添加路由。我试过使用route()函数,但它不起作用,没有添加路由。但是,它可以将对象传递给“构造函数”,但这将覆盖已定义的路由:
// This works and overrides all defined routes in App.Router
var router = new App.Router({ routes : { '/test/me' : 'testRoute' } });
// This is not working
router.route(ExposeTranslation.get('customers.new.route'), 'newCustomer');
router.route('/test/me/again', 'testAgainRoute');
事实上console.log(App.Router)
表明:
routes Object { /test/me="testRoute"}
我想我错过了一些我无法弄清楚的东西,我开始学习这个强大的 JavaScript 小片段。