带有嵌套选项卡的Backbone.js视图

时间:2013-02-23 17:23:44

标签: backbone.js backbone-views backbone-routing

我编写了一个由嵌套选项卡组成的应用程序。举个例子,我拿了https://github.com/tbranyen/backbone-boilerplate。我也使用RequireJS。

我至少有两级嵌套标签。其中一些具有相似的结构,我可以重用他们的观点。

例如,我有一个名为“Articles”的标签,其中包含标签:“New”,“Changed”,“Deleted”(实际上标签的数量更多)。我有以下路线:

/articles
/articles/new
/articles/changed/
/articles/deleted

这些路由映射到名为“showPanel”的方法,该方法有两个参数:panel和subPanel。使用这些参数我想显示所需的面板。

我是否可以使用任何模式来解决此问题或任何其他示例?谢谢!

1 个答案:

答案 0 :(得分:1)

查看this,希望能够帮助您:)

showPanel方法是一般方法,show panel和subPanel:

function showPanel(panel, subPanel){
  $('#panels').children().hide().filter(panel).show().children().hide().filter(subPanel).show();
}

路由配置:

var Router = Backbone.Router.extend({
  routes: {
    'articles': 'articlesPanel',
    'articles/:subPanel': 'articlesSubPanel'
  },
  articlesPanel: function(){
    showPanel('#articles', '');
  },
  articlesSubPanel: function(subPanel){
    showPanel('#articles', '#'+subPanel);
  }

});