我目前正在尝试在父视图中呈现子视图,如下所示:
var ParentView = Backbone.View.extend({
initialize: function(){
this.render();
this.childView = new ChildView({el: '#id1', model: this.model.get('collection').at(index)});
},
render: function(){
this.$el.html(ich.parent_template(this.model.toJSON()));
}
}):
父模板相当简单,大致如下:
<script id="parent_view" type="text/html">
<div>
<h1 class="section-title">{{ title }}</h1>
<div id="id1"></div>
</div>
</script>
我想像这样渲染 childView:
var ChildView = Backbone.View.extend({
initialize: function(){
this.render();
},
render: function(){
this.$el.html(ich.child_template(this.model.toJSON()));
}
}):
但是什么时候这样做没有出现。如果我在不包含 {el: '#id1'} 的情况下实例化子视图,然后将其从父视图渲染到正确的 div 中,则一切正常。我只是对为什么它不能以我上面概述的方式工作感到更加困惑。
我是否完全误解了指定子视图的 el 的作用?我试图遵循这个回应,但它根本不适合我。