我正在努力学习骨干。我理解el
是正在采取行动的元素。如果没有指定它是一个空div。我在视图中创建了一个模板并返回了视图对象。然后我渲染视图,但我不明白为什么我在渲染函数后链接el
。有人可以向我解释这行代码:
var view = new PersonView();
this.$('#family_list').children().append(view.render().el);
el是什么?谢谢。
答案 0 :(得分:20)
jQuery的.append()
方法需要将一串HTML或DOM元素附加到其调用节点。
视图的.el
属性是其绑定的DOM元素。在调用view.render()
之后,其.el
DOM元素属性被传递到jQuery .append()
方法,因此jQuery .append()
获取更新的(新呈现的)DOM节点。
这是可行的,因为.render()
来电必须返回this
as suggested in the documentation。因此,它的返回值是视图对象本身 1 ,从中可以立即引用.el
。
1 维基百科:Fluent interfaces