ext简介
- 格式:doc
- 大小:237.00 KB
- 文档页数:25
序言ExtJS是一个很不错的Ajax框架,可以用来开发带有华丽外观的富客户端应用,使得我们的b/s应用更加具有活力及生命力。
ExtJS是一个用javascript编写,与后台技术无关的前端ajax框架。
因此,可以把ExtJS用在.Net、Java、Php等各种开发语言开发的应用中。
最近我们在几个应用都使用到了ExtJS,对公司以前开发的一个OA系统也正在使用ExtJS2.0进行改造,使得整个系统在用户体验上有了非常大的变化。
本教程记录了前段时间本人学习ExtJS的一些心得及小结,希望能帮助正在学习或准备学习ExtJS的朋友们快速走进ExtJS2.0的精彩世界。
教程包括ExtJS的新手入门、组件体系结构及使用、ExtJS中各控件的使用方法及示例应用等,是一个非常适合新手的ExtJS入门教程。
本教程主要是针对ExtJS2.0进行介绍,全部代码、截图等都是基于ExtJS2.0。
在学习了本教程后,可以下载这个基于ExtJS2.0开发的单用户Blog系统的源代码,这个系统是我们团队中的williamraym与大峡等人开发的一个演示系统,系统源码整体质量比较高,通过学习这套源代码相邻一定能提高您ExtJS的综合水平。
本教程比较适合ExtJS的新手作为入门教程及手册使用,并在我的博客/blog/lengyu/上进行发布;应一些朋友的要求,根据本教程的写作思路,我还编写了比本教程更为详细的《ExtJS实用开发指南》,包含详细的ExtJS框架使用方法、各个控件详细配置参数、属性、方法及事件介绍,与服务器端集成及一个完整的示例应用系统介绍等内容,适合想深入学习ExtJS或正在使用ExtJS进行开发朋友们使用。
该《指南》当前在作为VIP文档发布,供该站的VIP用户阅读及下载。
凡是购买了《ExtJS 实用开发指南》文档的VIP用户,都可以在该指南印刷版出版后均会免费得到相应的印刷版本。
最后,希望广大网友把阅读本教程中的发现的错误、不足及建议等反馈给我们,让我们一起共同学习、共同进步,下面让我们一起进入精彩的ExtJS世界吧。
序言ExtJS是一个很不错的Ajax框架,可以用来开发带有华丽外观的富客户端应用,使得我们的b/s应用更加具有活力及生命力。
ExtJS是一个用javascript编写,与后台技术无关的前端ajax框架。
因此,可以把ExtJS用在.Net、Java、Php等各种开发语言开发的应用中。
最近我们在几个应用都使用到了ExtJS,对公司以前开发的一个OA系统也正在使用ExtJS2.0进行改造,使得整个系统在用户体验上有了非常大的变化。
本教程记录了前段时间本人学习ExtJS的一些心得及小结,希望能帮助正在学习或准备学习ExtJS的朋友们快速走进ExtJS2.0的精彩世界。
教程包括ExtJS的新手入门、组件体系结构及使用、ExtJS中各控件的使用方法及示例应用等,是一个非常适合新手的ExtJS入门教程。
本教程主要是针对ExtJS2.0进行介绍,全部代码、截图等都是基于ExtJS2.0。
在学习了本教程后,可以下载这个基于ExtJS2.0开发的单用户Blog系统的源代码,这个系统是我们团队中的williamraym与大峡等人开发的一个演示系统,系统源码整体质量比较高,通过学习这套源代码相邻一定能提高您ExtJS的综合水平。
本教程比较适合ExtJS的新手作为入门教程及手册使用,并在我的博客/blog/lengyu/上进行发布;应一些朋友的要求,根据本教程的写作思路,我还编写了比本教程更为详细的《ExtJS实用开发指南》,包含详细的ExtJS框架使用方法、各个控件详细配置参数、属性、方法及事件介绍,与服务器端集成及一个完整的示例应用系统介绍等内容,适合想深入学习ExtJS或正在使用ExtJS进行开发朋友们使用。
该《指南》当前在作为VIP文档发布,供该站的VIP用户阅读及下载。
凡是购买了《ExtJS 实用开发指南》文档的VIP用户,都可以在该指南印刷版出版后均会免费得到相应的印刷版本。
最后,希望广大网友把阅读本教程中的发现的错误、不足及建议等反馈给我们,让我们一起共同学习、共同进步,下面让我们一起进入精彩的ExtJS世界吧。
I. react-i18next 数组简介react-i18next 是一个用于 React 应用的国际化解决方案,它提供了多种功能和工具,帮助开发者轻松实现应用的国际化。
而在 react-i18next 中,数组是一个常用的数据类型,用于存储多语言文本或者选项,它在国际化的实现中起着重要的作用。
II. react-i18next 数组的用途1. 存储多语言文本在国际化的应用中,通常需要存储多种语言版本的文本内容。
这些文本内容可以是页面的标题、按钮的文案、错误提示信息等。
使用数组,开发者可以方便地将不同语言版本的文本存储在一个地方,便于统一管理和维护。
2. 存储选项除了存储文本内容,数组还可以用来存储选项。
在一些需要用户选择的场景中,比如下拉框、单选按钮组等,不同语言版本的选项内容也需要被国际化。
使用数组可以轻松存储和管理各种语言版本的选项内容。
III. react-i18next 数组的使用方法1. 定义数组在 react-i18next 中,定义一个数组非常简单。
可以直接在国际化文件中使用 JSON 格式定义一个数组,如下所示:```json{"options": ["Option 1","Option 2","Option 3"]}```此处,我们定义了一个名为 options 的数组,其中包含了三个选项。
2. 引用数组在 React 组件中,可以通过 react-i18next 提供的钩子函数或者高阶组件来引用数组。
假设我们需要在页面上展示这个数组中的选项内容,可以这样引用:```jsximport { useTranslation } from 'react-i18next';function OptionsList() {const { t } = useTranslation();const options = t('options', { returnObjects: true });return (<ul>{options.map((option, index) => (<li key={index}>{option}</li>))}</ul>);}```在这个示例中,我们使用了 useTranslation 钩子函数来获取 t 函数,然后通过 t 函数传入数组的键名来获取对应语言版本的选项内容,最后在页面上展示出来。
强大的EXT最新使用手册(中文)EXT 中文手册前言本手册所有内容均粘贴自互联网,如有错误,请多见谅。
目录EXT 中文手册 ........................................................................... (1)EXT简介 ........................................................................... . (4)目�� ......................................................................... ....................................................... 4 下载Ext .......................................................................... .................................................. 5 开始! ......................................................................... ...................................................... 5 Element:Ext的核心 ........................................................................... ............................ 5 获取多个DOM的节点 ........................................................................... ........................ 6 响应事件 ........................................................................... ................................................ 6 使用Widgets ...................................................................... .............................................. 8 使用Ajax ......................................................................... ............................................... 10 EXT源码概述 ........................................................................... (12)揭示源代码 ..................................................................................................................... 12 发布Ext源码时的一些细节 ........................................................................... .............. 13 我应该从哪里开始? ......................................................................... ............................ 14 适配器Adapters ..................................................................... ........................................ 14 核心Core ......................................................................... ............................................... 14 Javascript中的作用域(scope) .................................................................... .. (14)事前准备 ........................................................................... .............................................. 14 定义 ........................................................................... ...................................................... 14 正式开始 ........................................................................... .............................................. 15 window对象 ........................................................................... ........................................ 15 理解作用域 ........................................................................... .......................................... 16 变量的可见度 ........................................................................... ...................................... 16 EXT程序规划入门 ........................................................................... . (17)事前准备 ........................................................................... .............................................. 17 需要些什么? ......................................................................... . (17)applayout.html ............................................................... .. (17)applayout.js ................................................................. .................................................... 18 公开Public、私有Private、特权的Privileged? ........................................................ 20 重写公共变量 ........................................................................... ...................................... 22 重写(Overriding)公共函数 ........................................................................... ............ 22 DomQuery基础 ........................................................................... . (23)DomQuery基础 ........................................................................... ................................... 23 扩展EXT组件 ........................................................................... .. (30)文件的创建 ........................................................................... .......................................... 30 Let'sgo ........................................................................... ................................................. 34 完成 ........................................................................... ...................................................... 36 EXT的布局(Layout) ................................................................... .. (38)简单的例子 ........................................................................... .......................................... 39 加入内容 ........................................................................... .............................................. 42 开始使用Grid ......................................................................... .. (52)步骤一定义数据(DataDefinition) .................................................................. ............. 52 步骤二列模型(Column Model)....................................................................... ........ 53 Grid组件的简易分页 ........................................................................... (54)Grid数据 .................................................................................................................. 54 怎么做一个分页的Grid ......................................................................... ......... 55 分页栏Toolbar ...................................................................... ............................... 55 EXT Menu组件 ........................................................................... . (56)创建简易菜单 ........................................................................... .............................. 56 各种Item的类型 ........................................................................... ...................... 58 Item属性 ........................................................................... ....................................... 58 在UI中摆放菜单 ........................................................................... ...................... 58 Menu的分配方式: ......................................................................... .................... 59 练一练 ........................................................................... .............................................. 61 动态添加菜单按钮到Toolbar ..................................................................... 61 更方便的是 ........................................................................... ................................... 62 下一步是 ........................................................................... ........................................ 62 模板(Templates)起步 ........................................................................... .. (62)第一步您的HTML模板 ........................................................................... .................. 62 第二步,将数据加入到模板中 ........................................................................... .......... 63 下一步 ........................................................................... .................................................. 63 学习利用模板(Templates)的格式化功能 (63)正式开始 ........................................................................... .............................................. 63 下一步 ........................................................................... .................................................. 65 事件处理 ........................................................................... (65)非常基础的例子 ........................................................................... ........................ 65 处理函数的作用域 ........................................................................... ................... 65 传递参数 ........................................................................... ........................................ 66 类设计............................................................................ (66)对象创建 ........................................................................... ........................................ 66 使用构造器函数 ........................................................................... ........................ 67 方法共享 ........................................................................... ........................................ 67 表单组件入门 ........................................................................... . (68)表单体 ........................................................................... .................................................. 68 创建表单字段 ........................................................................... ...................................... 68 完成表单 ........................................................................... .............................................. 69 下一步 ........................................................................... .................................................. 70 为一个表单填充或提交数据 ........................................................................... . (70)让我们开始吧 ........................................................................... ...................................... 70 读取我们的数据 ........................................................................... .................................. 71 EXT中的继承 ........................................................................... ............................................. 72 补充资料............................................................................ . (73)Ext 2 概述 ........................................................................... (73)组件模型 Component Model......................................................................... .............. 75 容器模型ContainerModel ........................................................................ (79)布局Layouts ...................................................................... (80)Grid ......................................................................... .. (83)XTemplate .................................................................... (83)DataView ..................................................................... .................................................... 84 其它新组件 ........................................................................... .......................................... 84 EXT2简介 ........................................................................... (85)下载Ext .......................................................................... ................................................ 85 开始! ......................................................................... .................................................... 86 Element:Ext的核心 ........................................................................... .......................... 86 获取多个DOM的节点 ........................................................................... ...................... 87 响应事件 ........................................................................... .............................................. 87 使用Widgets ...................................................................... ............................................ 89 ����使用Ajax ......................................................................... ..................................... 92 TabPanel基础 ........................................................................... . (95)Step 1: 创建 HTML 骨架 ........................................................................... ................. 95 Step 2: Ext结构的构建 ........................................................................... ....................... 96 Step 3: 创建Tab控制逻辑 ........................................................................... .. (98)EXT简介无论你是Ext库的新手,抑或是想了解Ext的人,本篇文章的内容都适合你。
EXT开发指南目录一、EXTJS框架下载: (2)二、EXTJS使用 (2)1. 页面引用 (2)2. ExtJS 调用 (2)3. 组件体系下图所示: (3)1) 组件的使用 (4)2) 组件的配置属性 (5)三、各功能组件使用方法及介绍 (10)1. 面板Panel (10)2. 窗口Ext.Window (14)3. 布局 (19)4. 表格 (26)5. 数据存储Store (37)6. 树控件 (42)一、EXTJS框架下载:下载地址:/或者二、EXTJS使用1.页面引用<link rel="stylesheet" type="text/css" href="extjs/resources/css/ext-all.css" /> <script type="text/javascript" src="extjs/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="extjs/ext-all.js"></script>2.ExtJS 调用在ExtJS 库文件及页面内容加载完后,ExtJS 会执行Ext.onReady 中指定的函数,程序的代码大致如下:<script>function fn(){alert(“ExtJS库已加”);}Ext.onReady(fn);</script>fn 也可以写成一个匿名函数的形式,因此上面的代码可以改成下面的形式:<script>Ext.onReady(function (){alert(“ExtJS库已加载!”);});</script>进一步,我们可以在页面上显示一个窗口,代码如下:<script>Ext.onReady(function(){var win=new Ext.Window({title:"hello",width:300,height:200,html:'<h1>Hello</h1>'});//参数是"标题,宽度,高度,html文本"win.show();});</script>3.组件体系下图所示:组件大致可以分成三大类,即基本组件、工具栏组件、表单及元素组件。
EXT JS (版本3.2.0)Web-address: /1.ExtJS简介ExtJs:是一个用JavaScript编写的Ajax框架,可以开发华丽的富客户端应用。
ExtJs最开始基于YUI技术ExtJs由一系列的类库组成,一旦页面成功加载了ExtJs库后,我们就可以在页面中通过JavaScript 调用ExtJs的类及控件来实现需要的功能2.开始ExtJSExtJs包解压后的部分文件夹解释:adapter: 负责将里面提供的第三方底层库(包括Ext自带的底层库)映射为Ext所支持的底层库docs: API帮助文档examples:提供使用ExtJs做出的小实例resources: ExtUI资源文件目录,如css,图片都放在这里source:无压缩Ext全部的源码(里面分类存放)ext-all.js:压缩后的ext全部源码ext-all-debug.js:无压缩的ext全部源码(用于调试)ExtJs配置:<head></head>:在head标签里加入下面三个引用1.<link rel="stylesheet" type="text/css" href="../res/css/ext-all.css" />2.<link rel="stylesheet" type="text/css" href="../res/css/xtheme-blue.css"/>3.<script type="text/javascript" src="../adapter/ext/ext-base.js"></script>4.<script type="text/javascript" src="../ext-all.js"></script>(工程的目录设置也是有要求的,其中要导入extjs的图片文件,该文件夹在ext-3.0.0\resources路径下,复制images文件夹,原封不动的拷贝到工程中,这时要注意了,ext-all.css和xtheme-blue.css样式的css文件必须放在images目录下。
1 Ext 简介1.1 ext 简介ExtJS 是 一 个 用 javascript 写 的 , 主 要 用 于 创 建 前 端 用 户 界 面 , 与 后 台 技 术 无 关 的 前 端 ajax 框 架 。
因 此 ,可 以 把 ExtJS 用 在 .Net、Java、Php 等 各 种 开 发 语 言 开 发 的 应 用 中 。
该 框 架 完 全 基 于 纯 Html/CSS+JS 技 术 ,提 供 丰 富 的 跨 浏 览 器 UI 组 件 , 灵 活 采 用 JSON/XML 数 据 源 开 发 , 实 现 前 台 和 后 台 数 据 的 交 。
ExtJs 官 方 网 站 。
! 它 可 以 实 现 的 功 能 有 : 菜 单 、 目 录 树 、 form 表 单 、 表 格 、 图 形 统 计 、 窗口页面等。
而且还可以利用一些扩展类对功能进行扩展。
Ext 是 基 于 Web 的 客 户 端 框 架 , 完 全 是 基 于 标 准 W3C 技 术 构 建 设 的 , 其 使 用 到 的 都 是 HTML、 CSS、 DIV 等 相 关 技 术 。
Ext 最 杰 出 之 处 , 是 开 发 了 一 系 列 非 常 简 单 易 用 的 控 件 及 组 件 ,我 们 只 需 要 使 用 这 些 组 件 就 能 实 现 各 种 丰 富 多 彩 的 UI 的 开 发 。
1.2 ext 学习与应用经验小结Ext 无 论 组 件 有 多 少 配 置 属 性 、 还 是 事 件 、 方 法 等 等 , 其 最 终 都 会 转 化 为 HTML 在 浏 览 器 上 显 示 出 来 ,而 每 一 个 HTML 页 面 都 有 一 个 层 次 分 明 的 DOM 树 模 型 ,浏 览 器 中 的 所 有 内 容 都 有 相 应 的 DOM 对 象 ,动 态 改 变 页 面 的 内 容 , 正 是 通 过 使 用 脚 本 语 言 来 操 作 DOM 对 象 实 现 。
仅 仅 有 DOM 是 不 够 的 , 比 如 要 把 页 面 中 的 某 一 个 节 点 移 到 其 它 位 置 , 要 给 某 一 个 节 点 添 加 阴 影 效 果 ,要 隐 藏 或 显 示 某 一 个 节 点 等 ,我 们 都 需 要 通 过 几 句 javascript 才 能 完 成 。
因 此 ,Ext 在 DOM 的 基 础 上 ,创 建 了 Ex t Element, 可 以 使 用 Element 来 包 装 任 何 DOM, Element 对 象 中 添 加 了一系列快捷、简便的实用方法。
对 于 终 端 用 户 来 说 ,仅 仅 有 Element 是 不 够 的 ,比 如 用 户 要 显 示 一 个 表 格 、要 显 示 一 棵 树 、要 显 示 一 个 弹 出 窗 口 等 。
因 此 ,除 了 Element 以 外 , Ext 还 建 立 了 一 系 列 的 客 户 端 界 面 组 件 Component, 我 们 在 编 程 时 , 只 要 使 用 这 些 组 件 Componet 即 可 实 现 相 关 数 据 展 示 及 交 互 等 , 而 Compo nent 是 较 高 层 次 的 抽 象 ,每 一 个 组 件 在 渲 染 render 的 时 候 ,都 会 依 次 通 过 Element、 DOM 来 生 成 最 终 的 页 面 效 果 。
在 使 用 Ext 开 发 的 应 用 程 序 中 , 组 件 Component 是 最 高 层 次 的 抽 象 , 是 直 接 给 用 户 使 用 的 , Ext Element 是 Ext 的 底 层 API, 主 要 是 由 Ext 或 自 定 义 组 件 调 用 的 , DOM 是 W3C 标 准 定 义 的 原 始 API, 而 Ext 的 Element 通 过 操 作 DOM 来 实 现 页 面 的 效 果 显 示 。
在 Ext 中 ,组 件 渲 染 以 后 可 以 通 过 访 问 组 件 的 el 属 性 来 得 到 组 件 对 应 的 Element, 过 访 问 Element 的 dom 属 性 可 以 得 到 其 下 面 的 DOM 对 象 。
通 另 外 , 我 们 可 以 通 过 通 过 Ext 类 的 快 捷 方 法 getCmp、 get、 getDom 等 方 法 来 得 组 件 Component、 Ext 元 素 Element 及 DOM 节 点 。
Ext 看 起 来 是 非 常 简 单 的 东 西 , 但 是 还 是 需 要 多 做 实 践 才 行 , 只 有 通 过 不 断 的 练 习 ,大 量 的 使 用 ,才 能 对 Ext 的 组 件 特 性 、事 件 、事 件 处 理 机 制 以 及 与 服 务 器 端 交 互 接 口 等 深 入 的 掌 握 , 只 有 多 做 运 用 , 深 入 了 解 ext 的 组 件 的 工 作 原 理 及 机 制 , 才 能 编 写 出 高 级 的 Ext 的 应 用 。
学习方法: 1. 熟 读 Ext 项 目 的 源 代 码 如 果 要 想 深 入 应 用 Ext, 那 么 阅 读 Ext 项 目 的 源 代 码 这 是 必 不 可 少 的 环 节 , Ext 的 代 码 质 量 非 常 高 , 通 过 阅 读 他 的 代 码 我 们 可 以 更 加 深 刻 的 了 解 javascript 面 向 对 象 编 程 , Ext 代 码 中 包 含 了 很 多 高 级 的 js 技 巧 以 及 设 计 模 式 。
在 使 用 Ext 的 过 程 中 ,我 们 经 常 根 据 项 目 的 需 要 对 Ext 组 件 进 行 扩 展 ,设 计 自 己 的 组 件 或 控 件 ,而 如 何 实 现 一 个 自 定 义 的 Ext 组 件 ,我 们 可 以 从 Ext 的 各 个 组 件 源 代 码 中 找 到 答 案 。
Ext 的 源 代 码 在 Ext 项 目 的 source 目 录 。
读 Ext 源 码 ,并 不 一 定 非 要 从 某 一 个 地 方 开 始 , 而 组 件 核 心 代 码 Component.js 、 容 器 组 件 代 码 Container.js 、 面 板 Panel.js 等 这 些 是 必 看 的 ; core 目 录 中 的 Element.js、 Ext.js 等 也 是 必 看 的 。
当 需 要 从 一 个 控 件 进 行 扩 展 的 时 候 , 最好能简单看一看这个控件的源代码。
2 .Ext 官 方 示 例 , 在 ext 项 目 下 载 包 的 examples 目 录 中 , 包 括 各 个 控 件 的 基 本 应 用 演 示 ,同 时 还 有 一 些 比 较 复 杂 的 组 合 示 例 ,有 简 有 繁 ,非 常适合初学者认真研究。
2 Ext 运行原理及准备2.1 目录介绍1.1 Ext 的目录结构介绍:adapter docs examples resources ext-all.js ext-all-debug.js ext-core.js ext-core-debug.js LICENSE.txt Ext 核心代码和底层库,包括 jQuery,Prototype 和 YUI 的适配器 Ext 的文档,最重要的是 Ext 的 API。
这个不用多说了,是 Ext 提供的例子,是初学必看! Ext 的图片、样式都存放在这里。
Ext 的核心库,使用时必须引入的文件! 是 ext-all.js 的调试版本,调试时使用。
亦是 Ext 的核心库,使用时必须引入的文件! 是 ext-core.js 的调试版本。
这个不用多说了,是 Ext 的使用许可文件。
2.2 开发辅助工具Firefox + Firebug + Spket2.3 Ext 中哪些东西是必须的?一个应用必需内容至少应包括: 1. ext-all.js 2. adapter/ext/ext-base.js 3. build/locale/ext-lang-zh_CN.js 这个是简体中文国际化资源文件 4. 整个 resources 目录 注意的是,引用这些文件时注意 javascript 脚本的顺序。
一般是: 先引入样式/resources/css/ext-all.css 接着 ext-base.js 再是 ext-all.js 最后是 ext-lang-zh_CN.js因 此 , 要 使 用 ExtJS 框 架 的 页 面 中 一 般 包 括 下 面 几 句 :<link rel="stylesheet" type="text/css" href="/resources/css/ext-all.css" /> <script type="text/javascript" src="extjs/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="extjs/ext-all.js"></script>2.4 几点注意事项1.主要使用 firfox 开发 2.比较挑浏览器,对不同的浏览器,有不同的浏览效果 3.注意浏览器的兼容性 4.缓存 ctrl+shift+del2.5 Ext.onReady类似于 java 中的 main 函数,定义在 Ext.core.EventManager 中,表示只有在 Ext 框架全 部加载完后才能在客户端的代码中使用 Ext。
2.6 Ext.ViewPort 介绍ViewPort 会随着浏览器显示区域的大小自动改变,它代表整个浏览器的显示区域。
Viewport 不需要指定 renderTo,因为它直接渲染到页面的 body 区域,所以在一个页面 中就只能有一个 ViewPort 实例。
2.7 Ext 之 hollow world<link rel="stylesheet" type="text/css" href="/resources/css/ext-all.css" /> <script type="text/javascript" src="/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="/ext-all.js"></script> <script type="text/javascript" src="../examples.js"></script> <script language="javascript"> Ext.onReady(function(){ Ext.MessageBox.alert('helloworld', 'Hello World.'); }); </script>3 ext 之 gridGrid, 也 就 是 表 格 ,可 以 排 序 ( 本 页 、 全 局 ) 拖 动 列 , 改 变 列 宽 , 显 ,示隐藏某列,可以在线修改,插入一行记录,删除一行记录,支持复选、 序号。