我们有两个主干视图:一个父视图(PersonView)和它的子视图(LocationView)。他们的模板,在 Mustache 表示法中,是下一个:
PersonView template:
<h2>{{fullName}}</h2>
<div>
<h3>Address:</h3>
{{{location}}}
</div>
LocationView template:
<hr />
<dl>
<dt>City:</dt>
<dd>{{city}}</dd>
<dt>Place:</dt>
<dd>{{place}}</dd>
</dl>
注意这些模板没有父元素;因此,Backbone 将默认在“el”属性中为它们指定“div”元素。
在 PersonView 的“render”方法中,我们如何在不丢失 LocationView 的事件和不添加“LocationView.el”的默认包装“div”元素的情况下将 LocationView 的渲染 HTML 添加到“PersonView.el”中?
我们尝试了很多方法,如果我们删除 de subview 的“el”属性,我们总是会丢失事件(在子视图中),但是如果我们保留那个“el”,那么如果我们想将它与 jQuery 事件相关联就会出现问题:-(
有人对此有任何解决方案吗?提前致谢。