前言:

  我之前是搞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的学习。

01什么是ExtJs?的更多相关文章

  1. ExtJS实战 01——HelloWorld

    前言 Extjs5的发布已经有些日子了,目前的最新稳定版本是Extjs5.1.0,我们可以在官方网站进行下载.不过笔者今天访问得到的是502Bad Gateway,原因可能是sencha的nigix没 ...

  2. Extjs MVC学习随笔01

    Extjs Mvc模式下的整个MVC框架体系即下图: 包含了Controller(实现方法层),Store(数据来源管理层),View(页面布局层).之所以用MVC我想是因为减轻针对某一页面的单一的J ...

  3. 01.Sencha ExtJS 6 - Generate Workspace and Application

    生成workspace         下载gpl版本的ExtJs6         在https://www.sencha.com/legal/GPL/页面的右侧申请链接来下载,或者使用链接http ...

  4. ExtJS入门教程01,Window如此简单,你怎能不会?

    这是一系列ExtJS教程,今天的是第一篇,主要介绍ExtJS中Window的基本用法.希望大家能够支持! 来吧,创建一个漂亮的弹出窗 var win = Ext.create("Ext.Wi ...

  5. [转]ExtJs入门之filefield:文件上传的配置+结合Ajax完美实现文件上传的asp.net示例

    原文地址:http://www.stepday.com/topic/?459 作文一个ExtJs的入门汉子,学习起来的确是比较费劲的事情,不过如今在这样一个网络资源如此丰富的时代,依然不是那么难了的. ...

  6. 无废话ExtJs 入门教程十七[列表:GridPanel]

    无废话ExtJs 入门教程十七[列表:GridPanel] extjs技术交流,欢迎加群(201926085) 在Extjs中,GridPanel用于数据显示,即我们平时说的列表页.在本节中,我们先对 ...

  7. Extjs的学习及MIS系统实践应用(系列文章)

    本系列文章从Extjs的实际运用出发,结合系统开发的实践经验,详细解释Extjs的基本控件及控件扩展的用法,和在平时的学习运用中一步一步查阅的资料.积累经验的集锦.标题及链接奉上,用一个小程序,开启了 ...

  8. [转]看懂ExtJS的API

    原文地址:http://www.cnblogs.com/youring2/archive/2013/03/05/2944004.html ExtJS的功能很强大,相应的其API也很庞大,并且看起来并不 ...

  9. 无废话ExtJs 入门教程十一[下拉列表:Combobox]

    无废话ExtJs 入门教程十一[下拉列表:Combobox] extjs技术交流,欢迎加群(201926085) 继上一节内容,我们在表单里加了个一个下拉列表: 1.代码如下: 1 <!DOCT ...

随机推荐

  1. mysqldump: Error: Binlogging on server not active

    在学习使用mysqldump时,使用mysqldump备份时,遇到了下面两个错误: [root@DB-Server backup]# ./mysql_dump_back.sh Warning: Usi ...

  2. position:fixed 属性在iphone 中不起作用

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. 结对编程--基于android平台的黄金点游戏(2.0版本)

    在昨天上传完博客之后发现一个重大的bug...故在此推出2.0版本. 博文详情见:http://www.cnblogs.com/RayShea/p/5372398.html coding地址:http ...

  4. Laravel timestamps 设置为unix时间戳

    Laravel timestamps 设置为unix时间戳 class BaseModel extends Eloquent { /** * 默认使用时间戳戳功能 * * @var bool */ p ...

  5. jquery中关于append()的用法笔记---append()节点移动与复制之说

    jquery中关于append()的用法笔记---append()节点移动与复制之说 今天看一本关于jquery的基础教程,看到其中一段代码关于append()的一行,总是百思不得其解.于是查了查官方 ...

  6. 谈FTP服务器攻击技术及其展望 (下)

               上篇回顾:谈FTP服务器攻击技术及其展望 (上)http://chenguang.blog.51cto.com/350944/436876 本文出自 "李晨光原创技术博 ...

  7. html5 base64基础

    base64常见的编码形式,二进制文件.图片.视频等     如何弄出来一个base64?     a). FileReader         readAsDataURL();     b). 工具 ...

  8. spring集合类型的setter注入的一个简单例子

    在项目中我们有时候会为集合类型设定一些默认的值,使用spring后,我们可以通过配置文件的配置,用setter方式为对象的集合属性提供一些默认值,下面就是一个简单的例子. 首先我们创建了一个名为Col ...

  9. hdu 2594 Simpsons’ Hidden Talents KMP应用

    Simpsons’ Hidden Talents Problem Description Write a program that, when given strings s1 and s2, fin ...

  10. jquerymobile知识点:动态ListView

    这里要讲的是jqueryMobile 中的ListView 动态的列表 <ul data-role="listview" data-inset="true" ...