❮ 上一节
下一节 ❯
Ext.js - 快速指南
Ext.js - 概述
Ext JS 是一个流行的 JavaScript 框架,它提供了丰富的 UI,可用于构建具有跨浏览器功能的 Web 应用程序。Ext JS 主要用于创建桌面应用程序。它支持所有现代浏览器,如 IE6+、FF、Chrome、Safari 6+、Opera 12+ 等。而 Sencha 的另一款产品 Sencha Touch 则用于移动应用程序。
Ext JS 基于 MVC/MVVM 架构。 Ext JS 6 的最新版本是一个单一平台,可用于桌面和移动应用程序,而无需为不同平台编写不同的代码。
历史
Ext JS 1.1
Ext JS 的第一个版本由 Jack Slocum 于 2006 年开发。它是一组实用程序类,是 YUI 的扩展。他将该库命名为 YUI-ext。
Ext JS 2.0
Ext JS 2.0 版于 2007 年发布。此版本具有针对桌面应用程序的新 API 文档,但功能有限。此版本不向后兼容先前版本的 Ext JS。
Ext JS 3.0
Ext JS 3.0 版于 2009 年发布。此版本添加了图表和列表视图等新功能,但以牺牲速度为代价。它向后兼容 2.0 版。
Ext JS 4.0
Ext JS 3 发布后,Ext JS 的开发人员面临着提高速度的重大挑战。Ext JS 4.0 版于 2011 年发布。它具有完全修订的结构,随后是 MVC 架构和快速的应用程序。
Ext JS 5.0
Ext JS 5.0 版于 2014 年发布。此版本的主要变化是将 MVC 架构更改为 MVVM 架构。它包括在支持触摸的设备上构建桌面应用程序的能力、双向数据绑定、响应式布局以及更多功能。
Ext JS 6.0
Ext JS 6 合并了 Ext JS(用于桌面应用程序)和 Sencha Touch(用于移动应用程序)框架。
功能
以下是 Ext JS 的突出功能。
可自定义的 UI 小部件,包含丰富的 UI 集合,例如网格、数据透视网格、表单、图表、树。
新版本与旧版本的代码兼容性。
灵活的布局管理器有助于组织跨多个浏览器、设备和屏幕尺寸的数据和内容显示。
高级数据包将 UI 小部件与数据层分离。数据包允许客户端使用高度实用的模型收集数据,从而实现排序和过滤等功能。
它与协议无关,可以从任何后端源访问数据。
可自定义主题 Ext JS 小部件提供多种开箱即用的主题,这些主题在各个平台上保持一致。
优点
Sencha Ext JS 是企业级 Web 应用程序开发的领先标准。Ext JS 提供了构建适用于桌面和平板电脑的强大应用程序所需的工具。
简化跨桌面、平板电脑和智能手机的跨平台开发 - 适用于现代和传统浏览器。
通过 IDE 插件集成到企业开发环境中,提高开发团队的工作效率。
降低 Web 应用程序开发成本。
使团队能够创建具有引人注目的用户体验的应用程序。
提供一组小部件,可轻松创建强大的 UI。
遵循 MVC 架构,因此代码可读性极高。
限制
库的大小很大,大约 500 KB,这使得初始加载时间更长,应用程序运行缓慢。
HTML 充满了标签,使其复杂且难以调试。
根据通用公共许可政策,它对开源应用程序是免费的,但对商业应用程序则需要付费。
有时,即使是加载简单的东西也需要几行代码,这在纯 html 中更简单或 JQuery。
需要经验丰富的开发人员来开发 Ext JS 应用程序。
工具
以下是 Sencha 提供的工具,主要用于生产级别的 Ext JS 应用程序开发。
Sencha CMD
Sencha CMD 是一种提供 Ext JS 代码压缩、脚手架和生产构建生成的功能的工具。
Sencha IDE 插件
Sencha IDE 插件将 Sencha 框架集成到 IntelliJ、WebStorm IDE 中,通过提供代码完成、代码检查、代码导航、代码生成、代码重构、模板创建、拼写检查等功能,帮助提高开发人员的工作效率。
Sencha 检查器
Sencha Inspector 是一个调试工具,可帮助调试器在开发过程中调试任何问题。
Ext.js - 环境设置
本地环境设置
本部分将指导您如何在您的机器上下载和设置 Ext JS。请按照步骤设置环境。
下载库文件
从 Sencha https://www.sencha.com 下载试用版 Ext JS 库文件。您将从您注册的邮件 ID 上的站点获取试用版,该试用版是一个名为 ext-6.0.1-trial 的压缩文件夹。
解压文件夹,您将找到各种 JavaScript 和 CSS 文件,您将将它们包含在我们的应用程序中。我们将主要包含以下文件 −
JavaScript 文件 − 您可以在文件夹 \ext-6.0.1-trial\ext6.0.1\build 下找到的 JS 文件是 −
Sr.No
文件和说明
1
ext.js
这是核心文件,包含运行应用程序所需的所有功能。
2
ext-all.js
此文件包含所有已压缩的代码,文件中没有注释。
3
ext-all-debug.js
这是用于调试目的的 ext-all.js 的未压缩版本。
4
ext-all-dev.js
此文件也未缩小,用于开发目的,因为它包含所有注释和控制台日志,用于检查任何错误/问题。
5
ext-all.js
此文件主要用于生产目的,因为它比其他任何文件都小得多。
您可以将这些文件添加到项目的 JS 文件夹中,也可以提供文件在系统中的直接路径。
CSS 文件 −有许多基于主题的文件,您可以在文件夹 \ext6.0.1-trial\ext-6.0.1\build\classic heme-classic
esources heme-classic-all.css 下找到它们
如果您要使用桌面应用程序,则可以使用文件夹 \ext-6.0.1-trial\ext-6.0.1\build\classic 下的经典主题
如果我们要使用移动应用程序,则可以使用文件夹 \ext-6.0.1-trial\ext-6.0.1\build\modern 下的现代主题
以下库文件将添加到 Ext JS 应用程序中。
href = "..\ext-6.0.1-trial\ext-6.0.1\build\classic heme-classic
esources heme-classic-all.css" />
您将 ExtJS 应用程序代码保存在 app.js 文件中。
CDN 设置
CDN 是内容交付网络,您无需下载 Ext JS 库文件,而是可以直接将 ExtJS 的 CDN 链接添加到您的程序中,如下所示 −
href = "https://cdnjs.cloudflare.com/ajax/libs/extjs/6.0.0/classic/theme-crisp/resources/theme-crisp-all.css" / >
常用编辑器
由于它是一个用于开发 Web 应用程序的 JavaScript 框架,因此在我们的项目中我们将拥有 HTML、JS 文件。要编写我们的 Ext JS 程序,我们需要一个文本编辑器。市场上甚至有多个 IDE 可供选择。但目前,我们可以考虑以下之一 −
记事本 − 在 Windows 机器上,您可以使用任何简单的文本编辑器,例如记事本(本教程推荐使用)、Notepad++、sublime。
Eclipse −它是由 eclipse 开源社区开发的 IDE,可以从 https://www.eclipse.org/ 下载。
浏览器
Ext JS 支持跨浏览器兼容性,它支持所有主流浏览器,例如 −
IE 6 及以上
Firefox 3.6 及以上
Chrome10 及以上
Safari 4 及以上
Opera 11 及以上
您可以使用任何浏览器运行 Ext JS 应用程序。
Ext.js - 命名约定
命名约定是一组使用 Ext JS 应用程序时必须遵循的规则。标识符。它使代码对其他程序员来说更具可读性和可理解性。
Ext JS 中的命名约定遵循标准 JavaScript 约定,这不是强制性的,但是一种很好的做法。它应该遵循驼峰式命名语法来命名类、方法、变量和属性。
如果名称由两个单词组合而成,则第二个单词将始终以大写字母开头。例如,doLayout()、StudentForm、firstName 等。
名称
约定
类名
它应该以大写字母开头,然后是驼峰式命名。例如,StudentClass
方法名称
应以小写字母开头,后跟驼峰式大小写。例如,doLayout()
变量名称
应以小写字母开头,后跟驼峰式大小写。例如,firstName
常量名称
应仅使用大写字母。例如,COUNT、MAX_VALUE
属性名称
应以小写字母开头,后跟驼峰式大小写。例如,enableColumnResize = true
Ext.js - 架构
Ext JS 遵循 MVC/MVVM 架构。
MVC – 模型视图控制器架构(版本 4)
MVVM – 模型视图视图模型(版本 5)
此架构对于程序而言并非强制性的,但遵循此结构是最佳做法,可让您的代码高度可维护且井井有条。
带有 Ext JS 应用的项目结构
----------src
----------resources
-------------------CSS files
-------------------Images
----------JavaScript
--------------------App Folder
-------------------------------Controller
------------------------------------Contoller.js
-------------------------------Model
------------------------------------Model.js
-------------------------------Store
------------------------------------Store.js
-------------------------------View
------------------------------------View.js
-------------------------------Utils
------------------------------------Utils.js
--------------------------------app.js
-----------HTML files
Ext JS app 文件夹将驻留在项目的 JavaScript 文件夹中。
App 将包含控制器、视图、模型、存储和带有 app.js 的实用程序文件。
app.js − 程序流程将从其开始的主文件,应使用
Ext.onReady(function() {
Ext.create('Ext.Panel', {
renderTo: 'helloWorldPanel',
height: 200,
width: 600,
title: 'Hello world',
html: 'First Ext JS Hello World Program'
});
});