它取决于组件和配置属性的实现,是否可以简单地设置或需要应用方法调用。
您是正确的,在 ExtJs 中,许多配置属性是在构建时解释的。有些是在渲染时解释的。渲染后,Ext.Component
几乎所有属性都需要正确应用显式方法调用。
一般来说,我建议始终使用方法调用在构造时间之后更改属性(如果可用),以免破坏组件的内部工作。如果您查看实现,Ext.panel.Panel#setTitle
您会发现幕后发生了很多事情,例如事件触发等。
ExtJs 4 配置
Ext 4 引入了一个明确的“配置”机制,可能会满足您的目的。但是,我的理解是大多数 ExtJs 组件(还没有?)使用它。
签出'2。ExtJs类系统指南中的“配置”
从 xtype/config 文字创建对象
如果您想将新组件添加到容器中(例如,将选项卡添加到选项卡面板),这将很容易完成。
使用Ext.ComponentManager#create
(参见 [docs][2])从您的配置文字创建一个实际的组件对象/实例。
Ext.container.Container#add
实际上在内部调用此方法,因此您可以简单地将配置对象传递给该add
方法。
如果您想删除或添加选项卡到面板,现在可以调用正确的方法。
应用配置()
当然,您始终可以applyConfig
通过将配置“翻译”为正确的方法调用来实现自己的方法,该方法支持在运行时更改某些组件配置属性。