我已经使用 Backbone.js 和 Require.js 启动了一个 JavaScript 应用程序。该应用程序显示不同的顶级视图 - 搜索项目、编辑项目的不同方面、将项目相互连接。每个视图都以独占方式显示。
路由器模块的文件如下所示:
define([
'backbone',
'myapp'
'views/search',
'views/edit1',
'views/edit2',
'views/connect'],
function(Backbone, App, SearchView, EditView1, Editview2, ConnectView) {
return Backbone.Router.extend({
routes: {
"search": "doSearch",
"edit1": "doEdit1",
// more routes here
},
doSearch: function() {
App.main.show(new SearchView()); // Marionette.js regions
},
doEditView1: function() {
App.main.show(new EditView1());
},
// etc.
});
});
在我的代码中有更多的视图。有没有办法减少对一个对象的长需求视图列表?也许通过其他架构或一些 require.js 技巧?
也许我受 Symfony 2 关于“路由器”概念的影响太大了?