Jquery 使用Backbone.js呈现排序菜单
我正在使用Backbone.js呈现项目列表。这是工作,我有一个模型,集合和视图 我想做的是有一个主导航和子导航,它为列表项提供排序选项 主导航只有两个项目,所以我在页面上有硬编码。对于子导航,我想根据主导航选择动态渲染它。子导航项是静态的 我设置了一个事件,以便在主导航项目更改时观察:Jquery 使用Backbone.js呈现排序菜单,jquery,backbone.js,mustache,Jquery,Backbone.js,Mustache,我正在使用Backbone.js呈现项目列表。这是工作,我有一个模型,集合和视图 我想做的是有一个主导航和子导航,它为列表项提供排序选项 主导航只有两个项目,所以我在页面上有硬编码。对于子导航,我想根据主导航选择动态渲染它。子导航项是静态的 我设置了一个事件,以便在主导航项目更改时观察: events : { "click #items-main-nav" : "onNavMainClick" }, 我的问题是,我在哪里为两个主要导航项目定义subnav项目?以及如何渲染它们。这些都应
events : {
"click #items-main-nav" : "onNavMainClick"
},
我的问题是,我在哪里为两个主要导航项目定义subnav项目?以及如何渲染它们。这些都应该放在backbone.js视图文件中的什么位置
谢谢您将拥有一个呈现subNav容器的视图,在subNav容器内,您将根据主导航上选择的项目插入一个模板。我想它应该像下面这样
var subNav = Backbone.View.extend({
tagName: "div",
events: {
"click #items-main-nav" : "onNavMainClick"
},
onNavMainClick : function(event){
//determine which item they clicked on the main nav
//and call render with correct paramters
render(option);
},
render: function(option) {
$(this.el).html(option.template(this.model.toJSON()));
return this;
}
});
如何定义模型?它将是静态的,并包括每个项目的标题和val?我如何定义它并传递给mustache模板?感谢您可以为列表中的每个项目提供两个模型,您可以使用不同的模型呈现相同的模板,而不是呈现不同的模板。