extJS中"applyTo"和"contentEl"之间的区别

hgu*_*ser 3 extjs

是什么区别applyTo,并contentEl在ExtJS的?它们是面板的两个配置属性.

Bri*_*kau 7

applyTo将面板呈现为目标元素(面板主体仍可包含任何内容),contentEl使用目标元素作为其主体内容(面板仍可呈现给任何其他元素).这两种方法无关.

编辑:只是注意,从Ext 4.0+开始,applyTo配置不再存在.随着时间的推移,声明/渐进增强策略变得不那么可行(无论如何它从未在所有组件中完全支持),并且它们最终停止支持它.您将始终使用renderTonow(以编程方式呈现给目标元素),contentEl但仍然有效并仍指示从中获取内容的元素并将其添加到面板的主体中.contentEl当您希望在Panel组件中显示某些现有HTML而不必在JS代码中重现内容标记时,最有用.

虽然我在这里,但我想我会澄清其他内容......重要的是要理解它renderTo通常仅由应用程序布局中最顶层的容器使用.应始终将所有子组件添加items到Container中 - 通过renderTo这些组件不会参与Ext-managed布局系统(通常在应用程序中通常不需要),将子组件直接呈现到目标元素.

另一个区别是Ext中的每个组件都支持renderTo,但只有某些组件(最有用的是Panel)才会以contentEl有意义的方式表达.即使contentEl已定义AbstractComponent,大多数组件也不是为处理任意HTML内容而设计的.