it编程 > 前端脚本 > ExtJs

Ext JS添加子组件的误区探讨

118人参与 2024-05-18 ExtJs

经常会有人问我,为什么我的grid不能岁窗口的变得而自动调整。了解后,发现很多人都习惯在渲染子组件的时候将gird渲染到容器内的一个div里,而这正是问题的所在。

在ext js的布局系统中,能控制到的是容器的子组件,而对于渲染到容器中一个div的grid,它并不知道在这容器里添加了一个grid,当调整大小的时候,也就无法去调整grid的大小了,而这也就是为什么grid不会随容器的改变而改变了。

为什么那么多人喜欢使用这种方式来添加子组件呢?我想原因主要有以下两点:
1.不知道如何在容器内添加子组件,
2.习惯了使用jquery等其他框架的开发方法,一时无法改变

第一个原因,只要是动态添加grid,搞到很多初学者束手无策,譬如,我的grid要从远程返回后才知道怎么创建,我怎么去拿这个脚本和添加到容器呢?笔者在学习ext js也犯过这样的错误,可以理解。所以,本文的作用就是来解惑的。

办法有两个:一是,使用ajax把整个grid(或其他组件的配置对象)加载到本地,然后使用容器的add方法就可以将组件添加到容器;一是直接使用容器的load功能,直接加载子组件并渲染,返回的数据就是子组件的配置对象。

第二个原因是习惯问题,只能自己去修正了,尽快熟悉ext js的开发模式就可以很容易改掉这个习惯。

如果是使用ext js 4的mvc做开发,基本不会出现这么尴尬的情况了,因而可以将子组件做成视图,然后在控制器中将视图添加到容器中就可以了。
(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

Extjs4 Treegrid 使用心得分享(经验篇)

05-18

Extjs4 类的定义和扩展实例

05-18

ExtJs设置GridPanel表格文本垂直居中示例

05-18

Extjs单独定义各组件的实例代码

05-18

Ext中下拉列表ComboBox组件store数据格式用法介绍

05-18

EXTjs4.0的store的findRecord的BUG演示代码

05-18

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论