今天学到Ext.ComponentManager.get()方法与container.getComponent()方法:

我就提出两个疑问:

1、那这两个方法之间有什么区别呢?

2、在什么情况下使用他们最合适呢?


首先对这两个方法进行解释:

1、Ext.ComponentManager.get()方法

   使用Ext.ComonentManager.get(id)方法获取id选项值为myPanel的面板组件,该方法返回的是组件本身。

2、container.getComponent()方法

   容器面板组件的getComponent方法,该方法用于获取容器组件中的某个子组件(包括被停靠的子组件)。

container.getComponent(comp)

在上面这段代码中,container代表某个容器组件的引用变量名;comp参数可以为一个整数,代表所需要获取子组件在所有子组件中的序号,也可以为一个字符串,代表子组件的id。当使用子组件id的时候,请注意容器组件的getComponent方法只获取该容器的直接子组件,而不获取子组件的下层子组件,因此即使某个子组件的下层子组件的id与comp参数中指定的id完全相等,也将获取失败。该方法返回获取到的子组件的引用,获取失败时返回undefined。


为了找出两个方法之间的区别,我做了这个试验:

现有选取框组件:

151214266.jpg

下面的一个排序函数里就做了获取选取框值的操作:

151343180.jpg


事实证明上面的两个获取方法都可以成功运行,那两者的区别是不是就只是"Ext."和"toolbar."呢?


这个就有待以后项目的实战中进行验证,如有哪位有缘看到本人这篇文章,欢迎指点一二,或者留言交流也是可以的,共同进步。