sra*_*sra 6 extjs extjs4 extjs4.1
我正在寻找一种方法来访问组件/字段,这些组件/字段与访问它们在同一个项目数组中,或者甚至只在同一个父项目数组中(最后一个只是一个选项).
在ExtJS3中,只需ref在所有者容器中定义一个就可以轻松实现,但我在ExtJS4中没有找到类似的东西.
我知道我可以使用Ext.ComponentQuery()或快捷方式up()/ down()甚至Ext.getCmp()但它们都不是我想要的,因为它们只是执行一堆代码,而这ref是一种简单的方法.是的,我知道使用ComponentQuery比使用硬编码引用要安全得多.但我只想知道是否有其他方法可以做到这一点.
以下是我使用过的一些技巧:
//lookup by name
formPanel.getForm().findField('state');
//lookup using nextSibling/prevSibling in a fieldset or fieldcontainer
myField.ownerCt.nextSibling('textfield[fieldLabel=Description]')
Run Code Online (Sandbox Code Playgroud)
此fieldLabel属性用于缩小字段选择范围,但您可以使用任何属性.因此,如果您构建一个具有属性的字段,ref则可以使用它来选择您的字段,类似于在a中使用它的方式ComponentQuery.