0

在我的 Backbone.js 应用程序中,我有一个路由结构,它有一些我只想在一个处理程序中处理的公共部分。例如,这些 URL

/#scenario/1/show-report
/#scenario/2/foo
/#scenario/3/bar

都需要将场景设置为其特定的标识符。目前,我在每个路由处理程序中执行此操作(在 和 的处理程序中show-report)。有什么方法可以捕获 URL ,调用适当的函数并由特定的处理程序处理其余部分?foobarscenario/:id/

4

1 回答 1

2
var Router = Backbone.Router.extend({
    routes : {
        'scenario/:id/:type' : 'scenario'
    },
    scenario : function (id, type) {
        switch (type) {
            case 'show-report': console.log('show-report'); break;
            case 'foo':         console.log('foo'); break;
            case 'bar':         console.log('bar'); break;
        }
    }
});

new Router();
Backbone.history.start();
于 2013-09-01T13:56:25.950 回答