Ext JS 4的倒数:程序员预览 Countdown to Ext JS 4: Developer Preview

February 16, 2011 |
Ed Spencer
翻译 Ext中文网(ajaxjs.com) Frank

http://www.sencha.com/blog/ext-js-4-developer-preview/

Ext 4终于发布了,咱们可以下载源码看看。俺也第一时间、二话不说,搞份汉化的发布博文。Ext中文网定会持续跟进。frank

谨代表全体的ExJS项目开发组成员,我本人非常由衷地宣布Ext JS 4开发者预览版本,正式可用了!ExtJS4 不但为历来变革最大的一次版本,而且还包含了当今JavaScript框架技术最为令人侧目的力量。从生成的HTML到高层的类机制,我们对框架的每一寸地方皆进行了革新,具体还包括,统一了API、增加了相当多的功能,以及为之整个框架带来性能上的提升等等。

我们受到了这三个目标的驱动来推动ExtJS的开发:速度(speed)、健壮性(robustness)和易用性。为达到此目标,我们甚至把Ext的里里外外搬到制图版上,上下索求而得到最快捷、最无懈可击的Ext方案。

今天释出的预览版乃是最终版本所包含的一切,包括例子亦然

。我们还需要对某些组件作不停的修补务求更优雅地呈现,主要有Tree和Accordion组件。我们还升级了ExtJS
3中那份Blue Theme样式,使得新SASS主题系统用起来更方便。坦白说,很难一下子在这篇博文中交待新的一切,我看还是以连载的形式告诉大家吧,谢谢大家!

继续!

ExtJS 4.0 rc-1可在这儿下载。http://www.sencha.com/products/extjs4-preview/

对于大家十分关心的……

ExtJS之于激烈竞争的AJAX框架中其势头甚系蓬勃,第四版来说当然只能更好。为此,对于任何关键的升级改动,至为重要的一方面认知就是,保证环环相扣的升级(continuity
– continuity),涉及的内容即:API的、感观的(look-and-feel)和前个版本的兼容性(backwards compatibility)的几大问题。如何做到的呢?概而述之,就是从下面两个方面保证ExtJS4朝着该目标发展。

首先,ExtJS 4是完全基于沙箱的:全局空间没有依赖更多的原生对象。这意味着你可以在同一张页面中既运行Ext 4,又运行Ext 3。虽然实际情形不会这么做(占资源不少),但这证明了ExtJS的隔离性使有相当的考量。譬如我们提供的一个例子,就是利用Ext
3的Desktop再调用Ext 4的图表而成的例子。点击演示

其次,通过周全的改造机制,尽可能地照顾旧版(3.x)顺利升级到ExtJS 4。我们提供了升级指引

帮助用户升级,同时也会持续更新指引的。除了升级指引外我们还有处理遗留项目的工具文件,该文件放到ExtJS
3.x程序中就可以更新你的程序。我们还会后续在博客上提供更多这方面的资料。

同一张页面运行ExtJS 3 和 4。->观察例子

令人吃惊的效果

图表

上星期我们展示了

ExtJS 4全新的绘图与图表包,收到了不少积极的反馈,使得我们相信图表包为ExtJS 4中相当凌厉的部分。为着没看过帖子的朋友,我们再介绍一下:ExtJS 4通过公开且标准的图形技术SVG、Canvas和VML来生成那些华丽的图表,过程中不需要任何插件。图表系统不仅被整合到新的数据包中,而且还能在每一个浏览器上动画呈现。

数据

数据包就是您程序中加载和保存的数据系统,它在第四版中得到了极大的更新。4.x下,引入新的模型Model类可以使得于客户端上面轻松地处理任意类型的数据。另外模型还可以验证数据并且分配模型之间的各种关系。

扩充后的Proxy类可直接使用在Model之中,意味着你不用和Store打交道就可以加载或保存数据。

新的localStorage Proxy能够把数据保存在客户端上,只需一行的代码。多排序、过滤器和分组统统都在客户端搞掂,而新的Reader对象更可读取那些复杂的内嵌数据集合。宏观层面看,数据包支撑起框架多数的组件,——是否一下子内容太多了?请看看Ext中文网为您准备的教程:

Grid

Grid向来是ExtJS JS大头核心之一。Grid依据您的需求调配的格式来提供一个迅速浏览数据的综合模式。新版的ExtJS通过不断的重构使得Grid变得更快速、更轻盈和易于扩展。

第四版的Grid更聪明了,如果您没有打开的功能,Grid不会渲染与之对应的HTML标签,以节省宝贵的资源。也就是说,只要打开了的功能才会进行渲染到页面。这样的说,经过测试,比起ExtJS 3大概节省了近20%的HTML Markup。不夸张的话,现在连3.x的LsitView的速度都追不上Grid了(不过4.x中ListView却成了deprecated)。

这里值得一提的是Tree现在不是一个独立的组件了,而是从Grid派生出来的一个组件。

Forms

跟Grids一样,多数应用ExtJS框架的项目都离不开Forms。第三版的Form曾让我们都感到有点纠结,何解?总之就是很难做到想要的样子。ExtJS 4索性把FormLayout干掉,不限定某种布局来做表单布局,也就是说,任意布局都支持Form表单。Form不再基于DOM的模型来维护,于是解决了在多个tab中嵌入Form的问题。

要介绍的新面孔就是FieldLayout。有了这个FieldLayout就可以立刻让一个组件变为表单,一个标签(label)包括什么的错误信息也都可以。由于FieldLayout是一个接口(可参阅《动态加载和新的类机制
Count down to Ext JS 4: Dynamic Loading and New Class System》

、下

来了解多态的用法),从而可支持Form参与到任意的组件类之中去,你可加将Grid、Tree或其他组件变为一个表单以支持多选。今次发布的例子便有许多像这样应用FieldLayout的例子。

布局 Layouts

布局堪称ExtJS里头最强大的组件。布局既能够调节组件的大小和位置,又能在用户工作完成后布置好组件。虽然ExtJS 2时代就有大量的布局,但是灵活性欠奉;即使3.x的布局已经引入灵活的箱子模型布局,但依然明显不足,原因在于它是以极大的性能消耗来换取灵活性的。

针对以上灵活性和性能不能兼之的难题,ExtJS 4提出了崭新的DockLayout(暂找不到适合译名)。我们还会后续在博客上提供更多这方面的教程。

易用性 Accessibility

纵观JavaScript应用程序的易用性总是一个不易的难题。ExtJS 4在易用性方面做到了以下几点:一、支持ARIA:所有组件的标签均带有ARIA属性,供屏幕阅读器理解页面的意思;二、焦点管理器(Focus
Manager)使得全键盘控制应用程序变为可能;三、高对比度的主题,高亮的文字和暗色的背景构成的反差利于视觉障碍用户交互界面。易用性在某些行业中十分强调,我们也会跟进易用性与Ext的结合,当然还包括RTL的特性。希望新版有更多这方面的改善。

主题&换肤

用户能够更轻松地换肤这一点在我们众多需求中居于前列。透过发挥SASS和Compass强大的威力,使得ExtJS 4的换肤技术降低了复杂度。只需要修改几个颜色的变量便可自定义整套框架的外观。参阅http://www.sencha.com/blog/an-introduction-to-theming-sencha-touch/

Ext JS 4.0 的未来之路

(不译了,总结性发言,看官你懂的……)前途是光明的……年青人……此处省略几十字……

时间: 2024-09-20 09:30:11

Ext JS 4的倒数:程序员预览 Countdown to Ext JS 4: Developer Preview的相关文章

javascript-淘宝图片上传预览 删除 和恢复删除 js或jq代码 急用请务必帮忙 万分感谢

问题描述 淘宝图片上传预览 删除 和恢复删除 js或jq代码 急用请务必帮忙 万分感谢 本地上传图片的预览 会有删除 恢复删除 来回切换的功能 只要本地上传功能 就可以了 请大神帮帮忙 非常感谢 这是demo http://jsbin.com/yedutofafe/edit?html,output 解决方案 http://blog.sina.com.cn/s/blog_9c6c8ea90101crgo.html

自定义按钮按键-MFC 多文档 视图程序 打印预览 添加自定义button按钮按键

问题描述 MFC 多文档 视图程序 打印预览 添加自定义button按钮按键 想在多文档视图程序的打印预览中添加自定义的按钮,比如导出到文件按钮. 百度google,好像改afxprint.rc文件可以实现,但我修改后保存不了,提示cannot save. 不知道怎么弄了,这问题搞了一天了,不知道有没有可以告诉下的,谢谢了.

js实现Select头像选择实时预览代码_javascript技巧

本文实例讲述了js实现Select头像选择实时预览代码.分享给大家供大家参考.具体如下: 这里演示js实现Select头像选择,实时预览效果,在留言或评论的时候,让用户简易的选择头像,以前最常见的方式是使用单选框,当然使用其它的形式也可以,比如今天这个Select,下拉选框选择头像,也是不错的体验. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-select-ico-pic-view-codes/ 具体代码如下: <!DOCTYPE ht

用netbeans 6.9.1写Swing程序,预览效果和实际效果怎么不一样

问题描述 用netbeans6.9.1写Swing程序,直接拖拽了几个空间上去,结果预览效果和实际效果不一样.实际效果和AWT的一样,怎么回事? 解决方案 解决方案二:用eclipse也会吧,预览和实际多少会有差别的解决方案三:那你调用的是swing包还是awt包呢,要是调用的awt的包不一样就对了,因为当时awt的api会调用系统平台的api,说白了就是在不同的平台下面显示效果会有些差别,当然如果全部是用swing写的就不应该出现lz所说的了解决方案四:自己顶起,解决了解决方案五:netbea

js实现纯前端的图片预览_javascript技巧

图片上传是一个普通不过的功能,而图片预览就是就是上传功能中必不可少的子功能了.在这之前,我曾经通过订阅input[type=file]元素的onchange事件,一旦更改路径则将图片上传至服务器,接着就获取图片路径并赋值到img元素上.先不管文件异步提交的解决方案,就是服务端清理那些临时的预览图片已经增加不少工作量了. 偶然从MDN上找到纯前端图片预览的相关资料,经过整理后记录下来以便日后查阅.  一.准备功夫1──FileReader   FileReader是HTML5的新特性,用于读取Bl

js实现上传图片之上传前预览图片_javascript技巧

上传图片对图片进行一下预览,可以了解图片上传后大概会是什么样子,此功能用js实现,然后在fileupload控件的change事件中调用,这样当用fileupload选择完图片以后,图片就会自动显示出来了.功能很简单,却很实用. 预览图片的js代码: 复制代码 代码如下: <script type="text/javascript"> function setImagePreview(docObj,localImagId,imgObjPreview) { if(docObj

程序员Web面试之jQuery

又到了一年一度的毕业季了,青春散场,却等待下一场开幕. 在求职大军中,IT行业的程序员.码农是工科类大学生的热门选择之一, 尤其是近几年Web的如火如荼,更是吸引了成千上万的程序员投身其中追求自己的梦想, 这篇文章以Web面试官的经历整理而成,希望能对你有所帮助.   jQuery是什么?    jQuery是javascript编写一个可重用的JavaScript库. 不使用jQuery设置UI文本的JavaScript代码如下: document.getElementById("txt1&q

js兼容火狐显示上传图片预览效果的方法_javascript技巧

本文实例讲述了js兼容火狐显示上传图片预览效果的方法.分享给大家供大家参考.具体实现方法如下: <!doctype html> <html> <head> <meta content="text/html; charset=GBK" http-equiv="Content-Type" /> <title>Image preview example</title> <style type=&

js实现上传图片预览的方法_javascript技巧

图片预览的 javascript 本地操作 早期浏览器,不能将本地图片作为页面元素处理,要实现图片预览需要将图片先上传到服务器,再从服务器取得进行预览 现代的浏览器功能越来越全面,因此可以实现对一些数据的本地处理 Chrome MsEdge(ie11) Firefox  上图的html <tr> <td>缩略图</td> <td> <a href="javascript::void(0)" class="fileBtn&q