论坛首页 Web前端技术论坛

Ext JS 4.0 Grid实战

浏览 29394 次
精华帖 (0) :: 良好帖 (3) :: 新手帖 (2) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-05-08  
jiajiafucs 写道
一直在看4.0的API,比3.3的API多很多东西,但是3.3的也能用

其实3开发的风险小。我们之前用3做了尝试,但后来公司领导还是决定用4。
0 请登录后投票
   发表时间:2011-05-09  
3-4可以混起来用
0 请登录后投票
   发表时间:2011-05-09  

个人认为extjs4是一个全新的开始,可以说是颠覆了3的理念和方式,通过给的examples可以看到其大力发展富客户端模式.还好有V8引擎,觉得IE都坐不住了,IE9这不紧锣密鼓的开发中.回到正题,

1 首先可以看到加载js的方式变成了

<script type="text/javascript" src="extjs/bootstrap.js"></script>

看其源代码,主要是判断具体是加载ext-all.js还是ext-all-debug.js.相比省略了1行代码,还带来了自动切换效果,不错

2 其次,这次升级主要解决的就是性能问题,首先就是加载,通过新的加载Ext.require实现了不用全部加载ext-all.js,而只用需要的部分.但小弟对这一点比较疑惑,当引入了ext-all.js不就全加载了么,这个require具体又怎么起作用呢?

基于此加载方式,使用Ext.create来创建对象,但从编码的角度来看,还是3的方式去 new一个对象比较形象,当然4中仍然可以使用new的方式,跟3一样;写了个简单panel,觉得页面东西比较少的情况下性能上没太明显区别.

3 这次改动最大的莫过于store了,直接提出了模型的概念,store中存放的都是模型,类似于javabean,与面向对象更贴切,而且模型的创建比之前record简单生动;并且store的add方法支持直接加入一个模型的json对象,省去了之前创建record的啰嗦;攒一个.

(PS:这次的api相当的华丽,而且是local理念,直接打开ext-4.0.0\docs\index.html,相当华丽,同样如果用IE会觉得生不如死)

但就是苦了升级的了,如果没有很好的封装估计全篇改是没可能了.我在自己工程里都对store和具体组件整合到一起,具体页面就是使用自定义组件,相当于就看不到store,store的方法给到自定义组件身上.减少对store的依赖,否则像楼主这样的代码不管是维护还是升级都不好弄.

4 这次最大的特色莫过于图表功能了,看其example的图表都帅的不是一点,最重要的是不再依赖与flash了,看来flash的日子越来越难了.

不过小弟还是疑问想与大家探讨,如果使用one page one application,那一个welcome页面不就将需要的js全部加载起来,下来在panel中load的jsp就不需要加载ext-all.js,直接使用,那就不需要Ext.require/Ext.create的方式了,直接new起来不更方便?

0 请登录后投票
   发表时间:2011-05-09  
Ext是GPL协议,使用的时候要记得给钱
0 请登录后投票
   发表时间:2011-05-09  
不知道楼主有没有给grid添加keydown事件``

现在通过`grid.getView().on("keydown",function(){});可以`

有没有可以写在配置项里的方法?`
0 请登录后投票
   发表时间:2011-05-09  
kamuikyo 写道

个人认为extjs4是一个全新的开始,可以说是颠覆了3的理念和方式,通过给的examples可以看到其大力发展富客户端模式.还好有V8引擎,觉得IE都坐不住了,IE9这不紧锣密鼓的开发中.回到正题,

1 首先可以看到加载js的方式变成了

<script type="text/javascript" src="extjs/bootstrap.js"></script>

看其源代码,主要是判断具体是加载ext-all.js还是ext-all-debug.js.相比省略了1行代码,还带来了自动切换效果,不错

2 其次,这次升级主要解决的就是性能问题,首先就是加载,通过新的加载Ext.require实现了不用全部加载ext-all.js,而只用需要的部分.但小弟对这一点比较疑惑,当引入了ext-all.js不就全加载了么,这个require具体又怎么起作用呢?

基于此加载方式,使用Ext.create来创建对象,但从编码的角度来看,还是3的方式去 new一个对象比较形象,当然4中仍然可以使用new的方式,跟3一样;写了个简单panel,觉得页面东西比较少的情况下性能上没太明显区别.

3 这次改动最大的莫过于store了,直接提出了模型的概念,store中存放的都是模型,类似于javabean,与面向对象更贴切,而且模型的创建比之前record简单生动;并且store的add方法支持直接加入一个模型的json对象,省去了之前创建record的啰嗦;攒一个.

(PS:这次的api相当的华丽,而且是local理念,直接打开ext-4.0.0\docs\index.html,相当华丽,同样如果用IE会觉得生不如死)

但就是苦了升级的了,如果没有很好的封装估计全篇改是没可能了.我在自己工程里都对store和具体组件整合到一起,具体页面就是使用自定义组件,相当于就看不到store,store的方法给到自定义组件身上.减少对store的依赖,否则像楼主这样的代码不管是维护还是升级都不好弄.

4 这次最大的特色莫过于图表功能了,看其example的图表都帅的不是一点,最重要的是不再依赖与flash了,看来flash的日子越来越难了.

不过小弟还是疑问想与大家探讨,如果使用one page one application,那一个welcome页面不就将需要的js全部加载起来,下来在panel中load的jsp就不需要加载ext-all.js,直接使用,那就不需要Ext.require/Ext.create的方式了,直接new起来不更方便?

 

 

是啊`这个model比record方便`苦了改代码了`

0 请登录后投票
   发表时间:2011-05-09  
chinafather 写道
3-4可以混起来用


官方也给出了一个混用的例子,但不知道混用会不会产生什么污染呢?
0 请登录后投票
   发表时间:2011-05-09  
kamuikyo 写道

个人认为extjs4是一个全新的开始,可以说是颠覆了3的理念和方式,通过给的examples可以看到其大力发展富客户端模式.还好有V8引擎,觉得IE都坐不住了,IE9这不紧锣密鼓的开发中.回到正题,

1 首先可以看到加载js的方式变成了

<script type="text/javascript" src="extjs/bootstrap.js"></script>

看其源代码,主要是判断具体是加载ext-all.js还是ext-all-debug.js.相比省略了1行代码,还带来了自动切换效果,不错

2 其次,这次升级主要解决的就是性能问题,首先就是加载,通过新的加载Ext.require实现了不用全部加载ext-all.js,而只用需要的部分.但小弟对这一点比较疑惑,当引入了ext-all.js不就全加载了么,这个require具体又怎么起作用呢?

基于此加载方式,使用Ext.create来创建对象,但从编码的角度来看,还是3的方式去 new一个对象比较形象,当然4中仍然可以使用new的方式,跟3一样;写了个简单panel,觉得页面东西比较少的情况下性能上没太明显区别.

3 这次改动最大的莫过于store了,直接提出了模型的概念,store中存放的都是模型,类似于javabean,与面向对象更贴切,而且模型的创建比之前record简单生动;并且store的add方法支持直接加入一个模型的json对象,省去了之前创建record的啰嗦;攒一个.

(PS:这次的api相当的华丽,而且是local理念,直接打开ext-4.0.0\docs\index.html,相当华丽,同样如果用IE会觉得生不如死)

但就是苦了升级的了,如果没有很好的封装估计全篇改是没可能了.我在自己工程里都对store和具体组件整合到一起,具体页面就是使用自定义组件,相当于就看不到store,store的方法给到自定义组件身上.减少对store的依赖,否则像楼主这样的代码不管是维护还是升级都不好弄.

4 这次最大的特色莫过于图表功能了,看其example的图表都帅的不是一点,最重要的是不再依赖与flash了,看来flash的日子越来越难了.

不过小弟还是疑问想与大家探讨,如果使用one page one application,那一个welcome页面不就将需要的js全部加载起来,下来在panel中load的jsp就不需要加载ext-all.js,直接使用,那就不需要Ext.require/Ext.create的方式了,直接new起来不更方便?

 

1,帅哥有心了

2,看到火狐臃肿的身体,单位电脑内存为什么。。。那个啥,我毅然

<script type="text/javascript" src="${ctx}/js/extjs4/ext-all.js"></script>

3,代码怪异,因为我自己也有些迷糊,感觉ExtJS有时候在画蛇添足,大概是因为自身javascript造诣不深造成。献丑,也许有一天我豁然开朗的时候,能够。。。

4,图表的确很有亮点。

5,谢谢帅哥的点评。

 

0 请登录后投票
   发表时间:2011-05-09  
haiyupeter 写道
Ext是GPL协议,使用的时候要记得给钱

哈哈,这个很敏感。应该会付费的。因为公司项目购买了工作流的说。
0 请登录后投票
   发表时间:2011-05-09  
pior 写道
不知道楼主有没有给grid添加keydown事件``

现在通过`grid.getView().on("keydown",function(){});可以`

有没有可以写在配置项里的方法?`


完全可以写在配置项,json很好用的。
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics