Extjs4 controller之获取组件

来源:互联网 发布:linux端口号怎么查看 编辑:程序博客网 时间:2024/05/22 09:50

Extjs4 mvc模式中的controller是用来控制view和store的,可以用于各个view之间的关联,怎么从view里取出想要的组件,方法如下:

1、 通过组件ID获取组件:"#组件ID”;如:'panel #id'

2、 得到某一组件下所有的指定类型的组件:"panel>button”,这种方式是查找所有panel组件下的所有button组件。

3、 通过xtype:treepanel或.treepanel 如:'panel .gridpanel' 找的就是panel下的gridpanel

4、如果想获取所有button并且action为save的button,则可以使用"button[action=save] ",又或者获取所有panel,并且autoscroll属性为true的panel,则可以使用"panel[autoScroll=true]"

5.另外就是up和down方法,都可以用来找组件

 

Refs是一个查找并匹配组件的集合,集合里面则指定了需要的操作,即查找一个组件,而找到的这个组件所匹配组件就是selector指定的,用{ref: 'menu',selector: 'tablepanel'}来稍做解释,即查找menu组件,点击树节点,结果将在'tablepanel'中显示。这样解释可能比较含糊,那么就用官方例子做个解释吧。{ref: 'feedData', selector: 'feedlist dataview'}。这条的含义是查找'feedData',将'feedData'显示在'feedlist的子组件dataview'上。

总结下,就是在ExtJS4中所有的组件都有一个query方法,这个方法就是ComponentQuery的实现。当然,如果还是不明白的话,就可以使用:
Ext.ComponentQuery.query("tabpanel");
Ext.ComponentQuery.query("#mytree")
等等。实在extjs4.0实际使用过程中,如果要调用或查找组件,exjts会自动调用ComponentQuery的query方法来查找对应组件。

原创粉丝点击