2013-02-23 47 views
1

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

我至少有两层嵌套选项卡。其中一些具有相似的结构,我可以重复使用他们的观点。例如,我有一个名为“Articles”的选项卡,其中包含标签:“新建”,“更改”,“已删除”(实际上标签数量更多)。我有以下途径:

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

这些路由映射到一个名为“showPanel”这需要两个参数的方法:面板及子面板。使用这些参数我想显示需要的面板。

有没有我可以用来解决这个问题或任何其他例子的任何模式?谢谢!

回答

1

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

showPanel方法是一般的方法,显示面板和子面板:

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); 
    } 

}); 
+0

请提供一个答案,不仅是一个链接 – slfan 2013-02-25 09:27:56

+0

感谢您的答案。看起来很有趣,但我认为这不是我真正需要的。我需要创建视图,而不是仅显示/隐藏现有视图。 – 2013-02-25 11:52:11