我从Backbone开始,我想实现一个简单的应用程序以管理用户和产品对象。页面布局总是相同的:标题(首页),菜单(左列)和内容(右列),但标题和菜单内容取决于当前模块(用户或产品)。布局和视图管理
我搜索正确的方式来管理我的页面布局。实际上,我在我的Backbone.Router的每种方法中管理标题和菜单,但我认为这不是最好的解决方案。
var appRouter = Backbone.Router.extend({
routes: {
"users": "listUser",
"users/new": "newUser",
"users/:id": "showUser",
"products": "listProduct",
"products/new": "newProduct",
"products/:id": "showProduct"
},
listUser: function() {
if (this.userHeaderView == null) {
var header= new UserHeaderView();
header.render();
this.userHeaderView = header;
}
if (this.userMenuView == null) {
var menu= new UserMenuView();
menu.render();
this.userMenuView = menu;
}
this.contentView = new UserListView().render();
}
// ...
newProduct: function() {
if (this.productHeaderView == null) {
var header= new ProductHeaderView();
header.render();
this.productHeaderView = header;
}
if (this.productMenuView == null) {
var menu= new ProductMenuView();
menu.render();
this.productMenuView = menu;
}
this.contentView = new NewProductView().render();
}
// ...
});
感谢您的回复,我已阅读所有文章,并且您的RegionManager似乎很有趣。但是,我不明白我只能在模块更改时才更改标题。 – sylmandel 2012-02-23 08:38:35