2012-12-01 85 views
7

我想學習骨幹。我明白el是正在執行的元素。如果沒有指定它是一個空格。我在視圖中創建一個模板並返回視圖對象。然後我渲染視圖,但我不明白爲什麼我在渲染函數後鏈接el。有人可以向我解釋這一行代碼:'el'在view.render()中做了什麼?el?

var view = new PersonView(); 
this.$('#family_list').children().append(view.render().el); 

什麼是el?謝謝。

回答

19

jQuery的.append()方法需要將HTML或DOM元素的字符串附加到其調用節點。

該視圖的.el屬性是其綁定的DOM元素。在調用view.render()後,其.el DOM元素屬性被傳遞到jQuery .append()方法中,因此jQuery .append()獲取更新(新呈現)的DOM節點。

這是可能的,因爲.render()調用必須返回thisas suggested in the documentation。其返回值因此是視圖對象本身,並且可以立即引用.el


百科:Fluent interfaces

+1

這是一個很好的答案 - 感謝邁克爾! –