跨浏览器支持
只要你做 web 开发,你一定解决过浏览器兼容问题,这有多么消耗时间和影响工作进度你一定有体会,你可能会花上几小时甚至几天来解决跨浏览器 bug。你为什么不把这些时间用来关注你的业务功能呢?相反,如果使用 Ext JS 这个 JavaScript 框架,这种事情将由它去考虑,而你可以专注于业务功能。
丰富的 UI 组件
Ext JS 提供了大量丰富的 UI 控件,如 data grid ,tab panels,tree 控件,日期选择工具,图表 等等,Ext JS 作为一站式的前端框架,有很多优秀且实用的控件,尤其是表格对复杂数据展示的支持是其他的 JavaScript 框架不具备的, 这些都能大量节省你的开发时间。
双向数据绑定
双向数据绑定意味着当视图 view 的数据发生变化,你的模型 model 将自动更新。同样的,当你的应用更新这个模型 model,这个数据也将自动传递到 view。
就拿编辑页面来举栗。 当这个页面(view)加载,这时已经渲染了来自模型(model) 的数据到 HTML,并且当用户在页面(view)上更新这个数据,这时候你需要更新你的模型(model),但如果你使用 Ext JS 将不需要你自己去做这些编程。
JavaScript 的架构模式(MVC/MVVM)
随着越来越多的代码转移到客户端,维护客户端的 JavaScript 代码变的非常困难。通过在客户端使用
MVC
(
Model View Controller
)/
MVVM
(
Model View, View Model
) 使维护客户端的 JavaScript 变得更容易,并提高了生产效率。关于 MVC 和 MVVM 架构模式会在本章后面解释。
简化复杂的操作
想象一下使用纯 JavaScript 写一个 AJAX 调用,你需要考虑确保支持所有浏览器,这你可以看一下任何的 JavaScript 框架里进行 AJAX 调用的方法的源码。想象一下使用纯 JavaScript 创建一个复杂的控件,例如 grid ,分页,排序,过滤,分组,可编辑字段等等。Ext JS 不需要你自己来做这些工作。这里其实是废话,没有谁闲的蛋疼重复造轮子。但是其他框架一定没有 Ext JS 这种一站式的支持。
访问 DOM 变得容易
普通的纯 JavaScript 里,你可以访问 DOM,但是这有点复杂。使用 Ext JS 就会很容易查找 DOM。当然使用 jquery 的人肯定不信服,还能比 jquery 查找 DOM 更方便吗?我也常用 jquery ,这里我可以说 Ext JS 相较 jquery 查找 DOM 不逞多让。
客户端路由
在 web 应用里,URL 映射到 web 页面的路由方式背后有一系列的逻辑。路由可以在服务端也可以在客户端。通常客户端路由都是用单页式应用实现的。
Single-Page Application
(
SPA
)。
支持无障碍访问
无障碍访问特性意味着这个应用程序的内容必须是可以方便的让视力受损的人借助辅助设备访问(例如屏幕阅读器)。 而开发一个应用程序能够很好的支持无障碍特性是非常困难的。这里 Ext JS 已经为你做了。
在美国,如果你开发的软件供联邦和州政府职员使用,在绝大多数情况下,你需要确保你的程序是支持无障碍访问特性的。这一点,很少 JavaScript 框架能对无障碍访问特性有较好的支持。而 Ext JS 提供了完美的无障碍访问支持。
World Wide Web Consortium
(
W3C
)已经创立了一个名为
WAI-ARIA
(
Web Accessibility Initiative – Accessible Rich Internet Applications
) 的技术规范。
- WAI-ARIA, 是Web Accessibility Initiative – Accessible Rich Internet Applications 的缩写,指无障碍网页应用技术。她主要解决的一个问题:让残障人士能无障碍地访问网页上的动态内容。
这种规范方式使残疾人也能无障碍访问 web 应用。 Ext JS 对此具有良好的支持,并且所有的 控件/部件 都可以支持,不需要你做任何额外的编码。
Ext JS 提供支持两种应用架构 MVC 和 MVVM。