jjx
2013-07-28 11:22:05 +08:00
两者都在用, 其实对于做应用而言,两者均不完美
extjs 使用时完全可以不懂css (当然懂了就加分了),只要熟悉extjs 的方式(1是类的创建和继承,其次是用layout布局,用json构建ui),就可以像写桌面一样写(当然,那些习惯windows forms拖拉控件的人同样是不会适应的)
extjs 的问题在于桌面的观感, 写的时候会朝桌面应用的行为靠,比方说双击就是典型的桌面应用的行为,当然这在移动浏览器中是不支持的
其次是sencha的策略, extjs 对移动浏览器的支持是不够的,你写的extjs应用,直接上移动浏览器通常是会有问题的,一种是你的桌面的一些行为,比方说双击,或是ui的大小之类的,在移动浏览器上表现不好或支持不够,其实是extjs在移动浏览器上的性能不佳,ui不适合触摸。 这样,逼着你使用touch重新再构造一次移动的支持。不像基于jquery的方案, 你的应用,用移动浏览器也是勉强可以应付的。
第三是ui的单调,很快会审美疲劳。虽然官方现在有海皇星,但个人使用感觉直接套用效果反而很差,你必须从头构造你的ui才能用上,这样就失去了它存在的意义。
基于jquery的方案,比方说kendo ui/wijmo或是国内的easynewui之流, 大量的时间会花费在ui 构建上, 这里,过多的选择反而是不好的事情,因为你不像extjs那样不用选择,你可以做出任何的效果,结果,你的大量时间花在布局上。 其次, 针对数据的操作远不如extjs来的直接, 比方说树上点击一个节点,取得node绑定的数据对象,基于jquery的ui framework都实现的不直观。如果不讨论angularjs 这种绑定怪胎(angularjs得确很厉害,但angularjs和ui framework的结合是个问题,除非你不考虑ui framework)。 extjs 的data->控件的绑定是最符合应用开发的。