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 相关文章推荐
javascript document.referrer 用法
Apr 30 Javascript
Jquery在IE7下无法使用 $.ajax解决方法
Nov 11 Javascript
Jquery index()方法 获取相应元素索引值
Oct 12 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
Sep 09 Javascript
JS验证逗号隔开可以是中文字母数字
Apr 22 Javascript
一分钟理解js闭包
May 04 Javascript
vue实现ajax滚动下拉加载,同时具有loading效果(推荐)
Jan 11 Javascript
jQuery查找和过滤_动力节点节点Java学院整理
Jul 04 jQuery
完美解决手机浏览器顶部下拉出现网页源或刷新的问题
Nov 30 Javascript
ES6中的class是如何实现的(附Babel编译的ES5代码详解)
May 17 Javascript
详解elementui之el-image-viewer(图片查看器)
Aug 30 Javascript
jQuery 实现扁平式小清新导航
Jul 07 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
全国FM电台频率大全 - 14 江西省
2020/03/11 无线电
php中将时间差转换为字符串提示的实现代码
2011/08/08 PHP
写出高质量的PHP程序
2012/02/04 PHP
Yii中创建自己的Widget实例
2016/01/05 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
2017/11/14 PHP
让网页根据不同IE版本显示不同的内容
2009/02/08 Javascript
JQuery CSS样式控制 学习笔记
2009/07/23 Javascript
javaScript 关闭浏览器 (不弹出提示框)
2010/01/31 Javascript
jquery的$(document).ready()和onload的加载顺序
2010/05/26 Javascript
JavaScript高级程序设计 读书笔记之十 本地对象Date日期
2012/02/27 Javascript
jQuery+CSS实现菜单滑动伸展收缩(仿淘宝)
2013/03/22 Javascript
Windows 系统下安装和部署Egret的开发环境
2014/07/31 Javascript
javascript实现淡蓝色的鼠标拖动选择框实例
2015/05/09 Javascript
微信小程序 教程之条件渲染
2016/10/18 Javascript
前端实现文件的断点续传(前端文件提交+后端PHP文件接收)
2016/11/04 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
2016/12/13 Javascript
从零开始学习Node.js系列教程三:图片上传和显示方法示例
2017/04/13 Javascript
jQuery pager.js 插件动态分页功能实例分析
2019/08/02 jQuery
Angular单元测试之事件触发的实现
2020/01/20 Javascript
Python编程中的异常处理教程
2015/08/21 Python
ubuntu系统下使用pm2设置nodejs开机自启动的方法
2018/05/12 NodeJs
python实现图片转字符小工具
2019/04/30 Python
python字典一键多值实例代码分享
2019/06/14 Python
python 实现让字典的value 成为列表
2019/12/16 Python
django实现模型字段动态choice的操作
2020/04/01 Python
keras实现调用自己训练的模型,并去掉全连接层
2020/06/09 Python
Pandas的数据过滤实现
2021/01/15 Python
Stefania Mode英国:奢华设计师和时尚服装
2017/10/23 全球购物
JackJones官方旗舰店:杰克琼斯男装
2018/03/27 全球购物
营销总经理的岗位职责
2013/12/15 职场文书
关于毕业的中学校园广播稿
2014/01/26 职场文书
企业家王石演讲稿:坚持与放下
2014/04/27 职场文书
入党介绍人意见2015
2015/06/01 职场文书
2015年村级财务管理制度
2015/08/04 职场文书
SQL中的三种去重方法小结
2021/11/01 SQL Server
Pygame Time时间控制的具体使用详解
2021/11/17 Python