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


Posted in Javascript onJune 28, 2013

经常会有人问我,为什么我的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做开发,基本不会出现这么尴尬的情况了,因而可以将子组件做成视图,然后在控制器中将视图添加到容器中就可以了。

Javascript 相关文章推荐
jquery的选择器的使用技巧之如何选择input框
Sep 22 Javascript
JavaScript闭包实例讲解
Apr 22 Javascript
基于Jquery+Ajax+Json实现分页显示附效果图
Jul 30 Javascript
css与javascript跨浏览器兼容性总结
Sep 15 Javascript
Vue.js基础知识汇总
Apr 27 Javascript
深入理解jquery中的事件与动画
May 24 Javascript
详解Js模板引擎(TrimPath)
Nov 22 Javascript
javaScript中的空值和假值
Dec 18 Javascript
Vue利用canvas实现移动端手写板的方法
May 03 Javascript
解决在layer.open中使用时间控件laydate失败的问题
Sep 11 Javascript
Jquery cookie插件实现原理代码解析
Aug 04 jQuery
jquery实现鼠标悬浮弹出气泡提示框
Dec 23 jQuery
Javascript实现重力弹跳拖拽运动效果示例
Jun 28 #Javascript
jQuery随便控制任意div隐藏的方法
Jun 28 #Javascript
js实时获取系统当前时间实例代码
Jun 28 #Javascript
js复制到剪切板的实例方法
Jun 28 #Javascript
Javascript无阻塞加载具体方式
Jun 28 #Javascript
Extjs4 类的定义和扩展实例
Jun 28 #Javascript
JavaScript和CSS通过expression实现Table居中显示
Jun 28 #Javascript
You might like
PHP 关于访问控制的和运算符优先级介绍
2013/07/08 PHP
php实现批量下载百度云盘文件例子分享
2014/04/10 PHP
thinkphp中字符截取函数msubstr()用法分析
2016/01/09 PHP
Yii使用smsto短信接口的函数demo示例
2016/07/13 PHP
PHP简单日历实现方法
2016/07/20 PHP
php字符串操作针对负值的判断分析
2016/07/28 PHP
PHP 8新特性简介
2020/08/18 PHP
HR vs CL BO3 第一场 2.13
2021/03/10 DOTA
一个不错的用JavaScript实现的UBB编码函数
2007/03/09 Javascript
javascript仿qq界面的折叠菜单实现代码
2012/12/12 Javascript
jQuery中data()方法用法实例
2014/12/27 Javascript
无限循环轮播图之运动框架(原生JS实现)
2017/10/01 Javascript
vue单页面应用打开新窗口显示跳转页面的实例
2018/09/21 Javascript
vue 关闭浏览器窗口的时候,清空localStorage的数据示例
2019/11/06 Javascript
vue新建项目并配置标准路由过程解析
2019/12/09 Javascript
基于vue与element实现创建试卷相关功能(实例代码)
2020/12/07 Vue.js
python 2.7 检测一个网页是否能正常访问的方法
2018/12/26 Python
pytz格式化北京时间多出6分钟问题的解决方法
2019/06/21 Python
python pickle存储、读取大数据量列表、字典数据的方法
2019/07/07 Python
Python使用Beautiful Soup爬取豆瓣音乐排行榜过程解析
2019/08/15 Python
Python 单例设计模式用法实例分析
2019/09/23 Python
如何利用pygame实现简单的五子棋游戏
2019/12/29 Python
基于Keras中Conv1D和Conv2D的区别说明
2020/06/19 Python
Beauty Expert美国/加拿大:购买奢侈美容产品
2018/12/05 全球购物
当当网软件测试笔试题
2015/11/24 面试题
EJB的激活机制
2013/10/25 面试题
班组长的岗位职责
2013/12/09 职场文书
小区门卫管理制度
2014/01/29 职场文书
国际贸易专业个人求职信格式
2014/02/02 职场文书
畜牧兽医本科生的自我评价
2014/03/03 职场文书
六一节目主持词
2014/04/01 职场文书
法人代表任命书范本
2014/06/05 职场文书
电子商务专业毕业生求职信
2014/06/12 职场文书
Nginx+SpringBoot实现负载均衡的示例
2021/03/31 Servers
详解解Django 多对多表关系的三种创建方式
2021/08/23 Python
Java设计模式之享元模式示例详解
2022/03/03 Java/Android