我的模型视图有 2 个不同的模板。每次从数据库中获取模型时,从后端获取的前 3 个模型(#1、2、3)将使用第一个模板创建视图,接下来的 4 个模型(#4、5、6、7)将使用第二个模板,接下来的 3 个模型(#8、9、10)将使用第一个模板,依此类推。
问题:我将如何使用backbone.js 引入这个交替模板?
JS代码
// Views
PhotoListView = Backbone.View.extend({
el: '#photo_list',
render: function() {
$(this.el).html('');
_.each(this.model.models, function(photo) {
$(this.el).append(new PhotoListItemView({ model: photo }).render().el);
}, this);
return this;
}
});
PhotoListItemView = Backbone.View.extend({
tagNAme: 'div',
className: 'photo_box',
template: _.template( $('#tpl_PhotoListView').html() ),
initialize: function() {
this.model.bind('destroy', this.close, this);
},
render: function() {
$(this.el).html( this.template( this.model.toJSON() ) );
return this;
},
close: function() {
this.unbind();
this.remove();
}
});