`
zerozone
  • 浏览: 203339 次
  • 来自: 北京
社区版块
存档分类
最新评论

浅谈Ext的不足

阅读更多
在使用Ext的过程中,发现一些Ext组件设计细节的不足之处,在此简单罗列几个。虽然有变通的解决办法,不过这里讨论的是设计,而不是如何解决。

1. Field组件的change,blur事件在你离开当前页面时,如果没有事先切换到其他Field,这些事件不触发。假设一个Form包含若干个Field,需要判断某个Field的值是否发生改变,但当这个Form位于一个tabpanel中,切换tab居然不能触发blur事件触发。
2. Tree不支持Store和Record。假设有了Store和Record,判断Record是否发生改变就容易多了,也就是说,组件应当自己检查这些变化,比如Grid就是这么做的。

面向最终客户的组件设计应当皆可能屏蔽细节,合乎逻辑。相比SmartClient,Ext的组件只能说是它在鼓励人们了解不必要了解的细节。

附:
Ext的bug实在太多。在我们的工程中,对Ex.form.Field的override有很多,很难管理。

1
0
分享到:
评论
5 楼 stevezheng 2009-02-20  
我觉得ext还算可用,就是找不到一个好的编辑工具,看着100多行的javascript代码就头疼。
4 楼 KKFC 2009-02-03  
我从来不用EXT form,而是交给美工设计属于自己的FORM,因为都用EXT的FORM很容易“同质化”,客户也会一眼看出:“哦,又是这玩意……”

回归YUI-EXT 0.33吧,那才是我们想要的 嘿嘿……
3 楼 zerozone 2009-01-21  
kimmking 写道

第一个是bug
第二个是设计


Ext的bug太多了。今天又发现一个。
2 楼 kimmking 2009-01-21  
不足是相对的,没有一个参照物的话,都是站不住脚的
1 楼 kimmking 2009-01-21  
第一个是bug
第二个是设计

相关推荐

    EXT技术在Web界面设计与实现中的应用研究.pdf

    EXT是一个可开发丰富的Web界面的JavaScript框架。本文简要介绍了EXT技术的发展背景和核心概念及其原 理机制,通过EXT技术对Web应用系统布局功能的设计和实现,浅谈了如何使用EXT来提高页面易用性和改善用户体 验。

    浅谈pycharm下找不到sqlalchemy的问题

    from flask.ext.sqlalchemy import SQLAlchemy 然后执行时报错,找不到sqlalchemy, “ImportError: No module named flask.ext.sqlalchemy” 上网查了下,说是sqlalchemy模块没装,可以在pycharm下直接安装,于是...

    浅谈JavaScript 框架分类

    代表作如早期的YUI与EXT。 第2种 出现的是以类工厂为导向的框架,如著名的Prototype,还有mootools、Base2、Ten。它们基本上除了最基本的命名空间,其他模块都是一个由类工厂衍生出来的类对象。尤其是mootools 1.3,...

    浅谈Gradle 常用配置总结

    这里分享下我在日常开发中对 Gradle 的常用配置规则 一、版本号配置 ...ext { compileSdkVersion = 28 minSdkVersion = 15 targetSdkVersion = 28 versionCode = 1 versionName = '1.0' dependencies =

    浅谈javascript的原型继承

    } 首先看ext(4.1的1896行开始)的原型式继承。 代码如下: var TemplateClass = function(){}; var ExtObject = Ext.Object = { chain: function (object) { TemplateClass.prototype = object; var result = new ...

    浅谈Nodejs观察者模式

    一、前言 Nodejs使用有些日子了,近来再回顾下其API、多使用新特性,以期有更高层次的...首次接触 观察者模式是在Extjs框架的 Ext.util.observable源码,那时刚接触js,感觉这种模式很强大,也是我最早接触到的设计模式

    浅谈mysql数据库中的换行符与textarea中的换行符

    1. mysql数据库中的换行符 在mysql数据库中, 其换行符为\n 即 char(10), 在python中为chr(10) 2. textarea中的换行符 textarea中的换行符为\r\n ...以上这篇浅谈mysql数据库中的换行符与textarea中的换行符就是小编分

    嵌入式系统/ARM技术中的浅谈Linux文件系统反删除方法

     在Linux所用的Ext2文件系统中,文件是以块为单位存储的,默认情况下每个块的大小是1K,不同的块以块号区分。每个档还有一个节点,节点中包含有档所有者,读写权限,文件类型等信息。对于一个小于12个块的档,在...

    浅谈javascript中的instanceof和typeof

    对于instanceof和typeof,以前偶尔的用到过,特别是typeof用到的相对更多一些,今日研究ext源码,很多地方都用到了instanceof,突然觉得他们两个有些相似但也应该有他们区别,网上看了一些文章,对它们之间的关系有...

    浅谈用VSCode写python的正确姿势

    输入 “ext install python”,搜索时间可能会比较长 选择下载量最高的那个插件点击安装(根据网络情况,安装时间不确定,我当初装了挺久,我这边已经下载好了所以显示卸载) 到这边VScode就可以编辑python代码了...

    浅谈Vue.nextTick 的实现方法

    这是一篇继event loop和MicroTask 后的vue.nextTick API实现的源码解析。 预热,写一个sleep函数 function sleep (ms) { return new Promise(resolve => setTimeout(resolve, ms) } async function oneTick (ms) {...

    浅谈Sublime Text 3运行JavaScript控制台

    Node.js是一个基于Chrome JavaScript运行时建立的平台,小巧方便搭建。运行的端口可以在浏览器上运行,显示效果,但每次用浏览器也挺麻烦,我们这里讲的是在sublime text2中配置,是的js在sublimetext2中运行,再也...

    浅谈jquery中next与siblings的区别

    siblings([expr]): 概述  取得一个包含匹配的元素集合中每一个元素的所有唯一同辈元素的元素集合。 [expr] :可以用可选的表达式进行筛选。用于筛选同辈元素的表达式 示例 找到每个div的所有同辈元素。...

    浅谈Android textview文字对齐换行的问题

    今天忽然发现android项目中的文字排版参差不齐的情况非常严重,不得不想办法解决一下。 经过研究之后,终于找到了textview自动换行导致混乱的原因了—-半角字符与全角字符混乱所致!一般情况下,我们输入的数字、...

    浅谈jquery.fn.extend与jquery.extend区别

    1.jquery.extend(object); 为扩展jQuery类本身.为类添加新的方法。 jquery.fn.extend(object);给jQuery对象添加方法。 $.extend({  add:function(a,b){return a+b;...jQuery添加一个为 add的“静态方法”,之后便...

    浅谈64位进程远程hook技术及64模块导出表的一些变化,附源码-易语言

    一:浅谈64位进程远程hook技术 关于HOOK这个话题,网络上铺天盖地并无新鲜,故在此我就不讲述什么是HOOK这些无聊话题了,本文主要阐述一些64位下远程HOOK与32位的主要区别。首先我们来看看要实现一个远程HOOK的构成...

    浅谈Vuejs中nextTick()异步更新队列源码解析

    vue官网关于此解释说明如下: vue2.0里面的深入响应式原理的异步更新队列 官网说明如下: 只要观察到数据变化,Vue 将开启一个队列,并缓冲在同一事件循环中发生的所有数据改变。如果同一个 watcher 被多次触发...

    浅谈jQuery中的$.extend方法来扩展JSON对象

    $.extend方法可以扩展JSON对象,用一个或多个其他对象来扩展一个对象,返回被扩展的对象。 例一 合并 settings 和 options,修改并返回 settings var settings = { validate: false, limit: 5, name: "foo" };...

    浅谈jsp EL表达式取值过程、page和pagecontext的区别

    1、EL表达式解析过程 JSP中,我们经常会写为${obj.name}字样,但你有没有想过,它的取值过程是什么,属性值从哪取得? ${obj}相当于 request.getAttribute(“obj”),这句话严格来说不严谨,依次的请求范围是page、...

    浅谈C/C++中的static与extern关键字的使用详解

    一.C语言中的static关键字在C语言中,static可以用来修饰局部变量,全局变量以及函数。在不同的情况下static的作用不尽相同。(1)修饰局部变量一般情况下,对于局部变量是存放在栈区的,并且局部变量的生命周期在该...

Global site tag (gtag.js) - Google Analytics