前言:
我之前是搞EasyUI+KO.js的,由于最近项目需要用到ExtJs。因此。边学边记录我的学习历程,希望能给自己和大家一点帮助。
1.0什么是ExtJs?
首先,什么是ExtJs呢?ExtJs主要用来开发富客户端的AJAX应用,主要用于创建前端用户界面,与后台技术无关的前端ajax框架。因此,可以把ExtJS用在.Net、Java、Php等各种开发语言开发的应用中。ExtJs最开始基于YUI技术,由开发人员 JackSlocum开发,通过参考JavaSwing等机制来组织可视化组件,无论从UI界面上CSS样式的应用,到数据解析上的异常处理,都可算是一 款不可多得的JavaScript客户端技术的精品。
简单来说,就是一个前端框架,跟后端语言是没关系的,后台只需要返回Json数据即可。
2.0ExtJs各个版本的区别?
然后,说说ExtJs从3.X 版本到6.X版本的区别,前面那些旧版本就不说了,太过久远(由于本人一开始就用的5.X的MVVM模式,如果对之前版本的描述不当请见谅~!)
3.X--->4.0X
1.从兼容性,4.X会提供一个兼容3.X的解决方案。
2.提供了别名alias,别名可以通过类别来分开,例如:widget.hello和feature.hello是不一样的。
3.包以及命名空间的修改。例如window组件,之前是Ext.Window,到4.X改成了Ext.window.Window(这样我可以更清晰看出它的层次结构,例如Ext.panel.Panel和Ext.form.Panel可以看出是有关联的)。
4.创建对象方式的改变。提供了Ext.define的方式来定义一个组件类,这种方式还可以自动加载JS文件(按需加载文件,例如users,requires(后面再详细说ExtJs的加载模式),再也不用一个个拖JS文件了)。
5.最直观的就是写法上的不同,3.X的创建组件的写法是var win = new Ext.Window({ }); 通过new关键字来创建,就跟写后台代码一样。到4.X推荐使用var win=Ext.create(”Ext.window.Window“)的方式来解决问题,当然如果你习惯使用New的方式也可以。
6.提供了前端的MVC模式,把控制器(Controller),视图(View),数据(Store)分离。更好的管理代码。
。。。。剩下的再补充。大家也可以补充给我。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
4.X--->5.X
1.提供MVVM模式。每个视图(View)对应一个控制器(Controller)以及一个ViewModel(视图模型)。不了解MVVM的童鞋自己搜索相关资料。在复杂界面的数据处理上灵活方便很多。
5.X--->6.X 。。。以后补充
以上说了各个版本的区别,大家可以根据需要来选择各自版本。本系列教程用的是ExtJs5.1.0-gpl版本。(包括全部源代码,例子等等)
3.0学习ExtJs的方法:
1.0官方API:http://docs.sencha.com/extjs/5.1.0/
2.0官方示例:
3.0博客园,CSDN的一些好文。
有以上两个已经够用了,推荐先看官方的例子吧。遇到有需要的在去查API的对象属性事件。以下两个推荐下载离线的文档以及API。部署到本地。(官方例子在下载的GPL包里面已经包含了,路径为:~\ext-5.1.0\build)
4.0ExtJs的目录介绍:
看到目录很多,其实我们需要用到的就几个文件,好了,先就写在这里吧,我们下节再介绍。
总结:
这次就介绍了什么是ExtJs,以及ExtJs的版本区别,下一节我们正式进入到ExtJs的学习。