Программное добавление маршрутов в Backbone.Router?

Вот мой файл 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.

9
задан mu is too short 7 September 2013 в 01:08
поделиться