2010-10-14 41 views

回答

7

applyTo呈現面板到目標元件(面板主體仍然可以包含任何內容),contentEl使用目標元素作爲其主體內容(面板仍可被呈現給任何其他元素)。這兩種方法是無關的。

編輯:請注意,從Ext 4.0+開始,applyTo配置不再存在。隨着時間的推移,聲明式/漸進式增強策略對於Ext而言變得不太可行(反正它從未在所有組件中完全支持),並且他們最終停止支持它。你總是使用renderTo現在(以編程方式呈現給目標元素),而contentEl仍然有效,並且仍表示,從中取內容,並將其添加到面板的身體的元素。 contentEl當你有,你希望在不必再現JS代碼的內容標記以顯示面板組件內的頁面上的一些現有的HTML是最有用的。

雖然我在這裏,但我想我會澄清其他的東西......重要的是要明白,renderTo通常只用於應用程序佈局中最頂級的容器。所有子組件應該總是被添加爲items到Container - 直接繪製子組件通過renderTo目標元素意味着這些組件將不能參加分機管理佈局系統,你通常在應用程序中不想要的。

另一個不同之處是,在內線的每個組件支持renderTo,但只有某些組件(最有用面板)會以一種有意義的方式兌現contentEl。即使contentEl是在AbstractComponent定義,大多數組件不是設計來處理任意HTML內容。

+0

因此,applyTo等於'renderTo'? – hguser 2010-10-14 09:25:13

+1

applyTo假定現有內容提供Ext預期的結構標記,並將該組件渲染到該頂層renderTo只是將現有元素視爲要渲染的父容器。文檔對這些內容非常清楚,您應該仔細閱讀它們。 – 2010-10-15 20:07:14

0

一般來說,applyTo使用指定元素成分的主要元素,而contentEl僅適用於當面板呈現爲內容,以使用指定的元素,簡單地移動到面板的車身面板!

相關問題