Ext JS 4官方文档之三 — 类体系概述与实践

Ext JS 4 是一个功能强大的前端Web应用程序框架,官方文档提供了完整的API文档、类继承体系和组件开发指南。本文将重点讲解「Ext JS 4官方文档之三 -- 类体系概述与实践」,该文档深入解析了 Ext JS 4 的类体系结构和类的创建方式,对于开发人员了解和掌握 Ext JS 4 开发流程非常有帮助。

一、类体系概述

1.类体系结构

在 Ext JS 4 中,所有组件都是由类构建的。类体系结构由 Ext.Base 类继承体系和 Ext.Class 类创建体系共同构成。Ext.Base 是所有对象都具备的共同行为,而 Ext.Class 则是为了快速创建和组合类对象。Ext.Class 类可以从其它类派生新的类,支持多继承和混合模式,并可以在运行时动态修改类对象,十分灵活。

2.类命名空间

在 Ext JS 4 中,类名遵循一定的命名空间规则。通常情况下,类名空间是一个包含前缀字符的单一字符串,类名和命名空间之间用句号(.)分隔。例如:Ext.data.Store 表示 Ext JS 4 数据类库中的数据存储组件。

3.创建类

要创建一个类,首先要用 Ext.define() 方法创建该类的定义。在类定义中指定类名、命名空间和继承关系。同时,还可以指定配置属性、类方法和事件处理程序。例如,以下示例代码创建一个名为 "My.Person" 的新类。

Ext.define('My.Person', {
    extend: 'Ext.util.Observable',
    config: {
        name: '未命名',
        age: 0
    },
    constructor: function(config) {
        this.initConfig(config);
    },
    sayHello: function() {
        console.log('你好,我是' + this.getName());
    }
});

二、实践

下面我们通过创建一个简单的组件来了解类的创建和使用。

1.组件定义

在这里,创建一个名为 "My.Button" 的新类,并继承自 Ext.Button 类。这个类包含一个自定义的属性 text2,值为 "按钮2"。

Ext.define('My.Button', {
   extend: 'Ext.Button',
   xtype: 'mybutton',
   text2: '按钮2'
});

2.组件使用

通过以下代码可以使用 "My.Button" 组件。

{
   xtype: 'mybutton',
   text: '按钮1'
}

以上代码创建了一个新的 "My.Button" 组件,并且赋予它一个 "按钮1" 的文本。同时这个组件也使用了继承自 Ext.Button 的方法。

3.自定义方法

可以在组件中创建自定义方法,并访问父组件的方法。例如:

Ext.define('My.Button', {
    extend: 'Ext.Button',
    xtype: 'mybutton',
    text2: '按钮2',
    myMethod: function() {
        this.setText(this.text2);
    }
});

以上代码定义了一个名为 "myMethod" 的自定义方法,用于在按钮上设置一个新的文本。当按钮被单击时,可以调用该自定义方法。

{
   xtype: 'mybutton',
   text: '按钮1',
   listeners:{
       click: function(){
           this.up().myMethod();
       }
   }
}

以上代码会将 "My.Button" 组件添加到该视图中,并在单击按钮时调用 "myMethod" 方法。由于 "myMethod" 方法继承自 Ext.Button,它包含一个 "setText" 方法,可以将按钮的文本设置为 "按钮2"。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Ext JS 4官方文档之三 — 类体系概述与实践 - Python技术站

(0)
上一篇 2023年5月30日
下一篇 2023年5月30日

相关文章

  • iPhone上怎么安装deb文件的教程

    iPhone上怎么安装deb文件的教程? .deb文件是Debian软件包格式,通常用于在Debian和Ubuntu等Linux发行版中安装软件。在iPhone上,您可以使用Cydia Impactor或Filza等工具安装.deb文件。以下是关于如何在iPhone上安装.deb文件的攻略,包括以下几个步骤: 步骤1:下载.deb文件 在安装.deb文件之前…

    html 2023年5月17日
    00
  • fetch()函数说明与使用方法详解

    fetch()函数说明与使用方法详解 fetch() 是浏览器原生提供的一个用于发送请求和接收响应数据的方法,可以使用该方法向服务器发送请求获取数据,并接收返回的数据。下面是一些常用的 fetch() 的使用方法。 基本使用方法 代码示例: fetch(url) .then(response => { return response.json() })…

    html 2023年5月30日
    00
  • Eclipse怎么导入jar包 Eclipse导入jar包快捷键及图文详细教程

    崩坏星穹铁道忘却之庭12层boss怎么挑战 忘却之庭12层通关攻略 崩坏星穹铁道忘却之庭12层是一款非常受欢迎的游戏,以下是关于挑战忘却之庭12层boss的攻略,包括以下几个步骤: 步骤1:准备好角色和装备 在挑战忘却之庭12层boss之前,您需要准备好您的角色和装备。您可以选择一些高级角色和装备,以提高您的战斗力。 步骤2:了解boss的属性和技能 在挑战…

    html 2023年5月17日
    00
  • 鼠标操作怎么用?电脑鼠标操作图文教程

    以下是“鼠标操作怎么用?电脑鼠标操作图文教程”的完整攻略: 鼠标操作怎么用?电脑鼠标操作图文教程 鼠标是电脑的一种输入设备,用于控制光标在屏幕上的移动和点击。下面是鼠标操作的图文教程。 鼠标的基本操作 移动鼠标:将鼠标放在平滑的表面上,用手指轻轻地移动鼠标,光标会随之移动。 单击:用手指轻轻地按下鼠标左键,光标会在当前位置单击。 双击:用手指快速地按下鼠标左…

    html 2023年5月18日
    00
  • html文档中的location对象属性理解及常见的用法

    当我们在HTML文档中使用JavaScript处理某些事件时,常常需要使用location对象,来获取当前页面的URL地址或者跳转到其他页面。在本文中,我们将详细讲解location对象的属性及常见的用法。 location对象的属性 location对象是Window对象的一部分,主要用于获取或者操作浏览器的URL地址。下面是一些常见的location对象…

    html 2023年5月30日
    00
  • php抓取页面的几种方法详解

    PHP抓取页面的几种方法详解 什么是抓取页面? 抓取页面,顾名思义,就是获取网站上的数据。通俗的说,就是爬取网页上的内容,然后根据需要进行处理分析。在互联网发展迅速的今天,抓取页面已经成为网络爬虫应用的重要组成部分,广泛应用于搜索引擎、数据挖掘、分析等领域,而PHP也是其中常用的语言之一。 抓取页面的方式 PHP抓取页面的方式多种多样,根据需求不同,可以选用…

    html 2023年5月30日
    00
  • hbuilderx怎么设置失去焦点自动保存文件?hbuilderx设置失去焦点自动保存文件方法

    以下是HBuilderX设置失去焦点自动保存文件的攻略: 打开HBuilderX设置:首先,打开HBuilderX编辑器。然后,点击菜单栏中的“文件”选项,选择“首选项”菜单项。或者您也可以使用快捷键“Ctrl + ,”打开HBuilderX设置。 找到自动保存设置:在HBuilderX设置窗口中,选择“编辑器”选项卡。然后,找到“自动保存”选项。在这里,您…

    html 2023年5月17日
    00
  • jsp fckeditor 上传中文图片乱码问题的解决方法

    针对“jsp fckeditor 上传中文图片乱码问题的解决方法”这个问题,以下是详细攻略: 问题描述 在使用JSP集成FCKeditor富文本编辑器时,上传中文图片时会出现乱码问题。 解决方法 FCKeditor默认是以ISO-8859-1编码方式进行上传的,所以中文图片上传时会出现乱码问题。需要进行以下两个步骤的解决。 步骤一:修改FCKeditor配置…

    html 2023年5月31日
    00
合作推广
合作推广
分享本页
返回顶部