我正在使用underscore模板在客户端呈现html。我正在构建一个新闻源,其中包含不同类型的新Feed项,每个项都需要不同的模板。问题是它们在每个Feed项的底部共享相同的Comments区域。因此,我只想模拟一次,但在每个单独的feeditem模板中进行渲染。
在每个Feed项中包含注释而不复制每个Feed项模板中的注释模板的最佳方法是什么?我应该只在主模板外运行注释模板并附加html之后?
答案 0 :(得分:2)
将评论模板分开是明智的,特别是考虑到你应该有评论的模型和集合。最好的想法是让每个模板都包含<div class="comments-section"></div>
之类的内容。然后在你的backbone.js视图中,你可以有这样的东西:
Backbone.View.extend({
...
getCommentsEl: function() {
return this.$('.comments-section');
},
addCommentsSection: function() {
this.getCommentsEl().html(_.template(...));
}
...
});