Extjs-lesson1

简介: Extjs-lesson1


1.准备工作

  1. 熟悉 HTML
  2. 熟悉 CSS
  3. 熟练 javaScript
  4. 熟练  JS 的面向对象(oo)编程
  5. 熟练 Ajax

书籍推荐:《JavaScript 设计模式》《征服Ajax Web 2.0 开发技术详解》

2.Hello World

创建一个 html 页面,将 ext 的一些必要文件进行引入:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <!-- 引入 css 文件 -->
    <link rel="stylesheet" type="text/css" href="./ext-2.3.0/resources/css/ext-all.css"/>
    <!-- 引入 js 文件 -->
    <script type="text/javascript" src="./ext-2.3.0/adapter/ext/ext-base.js"></script>
    <script type="text/javascript" src="./ext-2.3.0/ext-all-debug.js"></script>
    <!-- 引入自己的 js 文件 -->
    <script type="text/javascript" src="./lesson01.js"></script>
  </head>
  <body></body>
</html>

创建对应的 js 文件 lesson01.js

(function() {
  Ext.onReady(function() {
    Ext.MessageBox.alert("提示", "hello world");
  });
})();

它的入口函数为 onReady ,即在加载完成 html 页面之后,再加载入口函数的内容。

显示效果:

ext-弹窗

3.官方 API 文档

小闫同学将开发工程师常用的官方文档进行了汇总,地址为「https://www.pythonnote.cn/OfficialDocuments/」文档会不定期补充更新,请收藏或转发给好友。

Ext.js 的文档也包含在内,点击对应按钮即可跳转。

包含了英文文档以及中文文档,英文吃力的同学,中文更方便哦 ~

document

下面是官方文档界面说明:

API-zh

文档讲解的超级详细,当哪里不理解的时候,可以快速检索学习。

4.对原生 js 扩展

4.1 Array remove

extjs 对原生的 js 进行了一些扩展,使得开发更加的高效化,比如 Array 的方法:remove。下面是它的 API

remove( o ) : Array
Removes the specified object from the array. If the object is not found nothing happens.
Available since: 1.1.0
Parameters
o : Object
The object to remove
Returns
Array
this array

简单的翻译来说:从数组中移除某个指定的对象,如果对象不存在,那么相当于什么都没发生,也不会报错。传入的参数是要移除的对象,返回的是这个数组。

「示例」

var msgArray = [1, 2, 3, 4, 5];
msgArray.remove(1);
alert(msgArray); // 1 被移除,弹出窗口显示 2,3,4,5

如果直接在 js 代码中执行上述代码会报错:没有 remove 方法。而在 Ext.onReady 中执行上述代码时,会正常无误。

当然上面只是众多 API 中的一个小例子,是为了说明它对原生 js 进行了很多扩展。那么他底层是怎么做的呢?

4.2 原理

Array.prototype.remove = function(obj) {
  if (null == obj) {
    return false;
  }
  for (var i = 0, n = 0; i < this.length; i++) {
    if (this[i] != obj) {
      this[n++] = this[i];
    }
  }
  this.length -= 1;
};
// 测试
var msgArray = [1, 2, 3, 4, 5];
msgArray.remove(1);
alert(msgArray); // 1 被移除,弹出窗口显示 2,3,4,5

其实大部分都是通过上述 prototype 为类添加方法,只不过官方的代码逻辑一定比这个完善的多。

相关文章
|
Python
Pandas 安装
10月更文挑战第26天
462 59
Pandas 安装
|
编译器 API C#
技术心得记录:深入分析C#键盘勾子(Hook)拦截器,屏蔽键盘活动的详解
技术心得记录:深入分析C#键盘勾子(Hook)拦截器,屏蔽键盘活动的详解
|
人工智能 自然语言处理 语音技术
《AI赋能鸿蒙Next:为特殊人群打造无障碍交互新体验》
在科技飞速发展的今天,鸿蒙Next设备借助人工智能技术,显著提升了特殊人群的无障碍交互体验。针对视障人群,提供精准屏幕朗读、视觉辅助智能问答和导航避障辅助;面向听障人群,实现AI声音修复、实时字幕与语音转文字;助力语言障碍者和老年人群体,通过AI优化交流与操作体验。开发者可利用鸿蒙Next的AI能力,深入了解用户需求,进行测试与优化,共同创造友好、便捷的无障碍环境,让特殊人群更好地融入数字社会,享受科技带来的美好生活。
702 8
|
SQL 存储 BI
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
|
存储 人工智能 自然语言处理
|
人工智能 搜索推荐 安全
人工智能与未来社会:探索AI在教育领域的革命性影响
本文深入探讨了人工智能(AI)技术在教育领域的潜在影响和变革。通过分析AI如何个性化学习路径、提高教学效率以及促进教育资源的公平分配,我们揭示了AI技术对教育模式的重塑力量。文章还讨论了实施AI教育所面临的挑战,包括数据隐私、伦理问题及技术普及障碍,并提出了相应的解决策略。通过具体案例分析,本文旨在启发读者思考AI如何助力构建更加智能、高效和包容的教育生态系统。
|
人工智能 网络协议 Shell
内网穿透实现公网访问自己搭建的Ollma架构的AI服务器
内网穿透实现公网访问自己搭建的Ollma架构的AI服务器
850 3
|
存储 监控 安全
端口安全:交换机上的网络守护者
【8月更文挑战第27天】
487 1
|
监控 前端开发 安全
永续合约杠杆交易所系统开发规则逻辑分析
永续合约杠杆交易所系统的开发是一个复杂且需要高度专业性的过程,涉及多个关键步骤和技术要点。以下是对该开发过程的详细解析:

热门文章

最新文章