日期:2014-05-16  浏览次数:20338 次

ExtJS 4.2 教程-03:使用Ext.define自定义类

转载自起飞网,原文地址:http://www.qeefee.com/extjs-course-3-define-classes

更多的ExtJS教程,点击进入>>《ExtJS 教程目录》,持续更新中……

  • ExtJS 4.2 教程-01:Hello ExtJS
  • ExtJS 4.2 教程-02:bootstrap.js 工作方式
  • ExtJS 4.2 教程-03:使用Ext.define自定义类
  • ExtJS 4.2 教程-04:数据模型
  • ExtJS 4.2 教程-05:客户端代理(proxy)
  • ExtJS 4.2 教程-06:服务器代理(proxy)
  • ExtJS 4.2 教程-07:Ext.Direct

ExtJS 允许用户使用Ext.define 自定义类。本文将通过实例介绍如何使用Ext.define自定义类,并介绍ExtJS 的动态加载(Require方法)的使用方法。

Javascript自定义类

在Javascript中,自定义类是这样的:

var Person = function (name, age) {
    this.Name = "";
    this.Age = 0;
    this.Say = function (msg) {
        alert(this.Name + " Says : " + msg);
    }

    this.init = function (name, age) {
        this.Name = name;
        this.Age = age;
    }

    this.init(name, age);
}

在这段代码中,我们定义了Person类,它具有Name 和 Age 两个属性,具有 Say 和 init 公有方法。当类创建的时候,会定义通过调用init方法实现类的初始化(所以init方法可以看作是类的构造函数)。我们看一下该类的用法:

var Tom = new Person("Tom", 26);
Tom.Say("Hello");

运行效果如图:

image

我们简单的介绍了如何在原生的Javascript中自定义类,由于本文重点是介绍ExtJS 中自定义类的方法,所以更多关于Javascript 自定义对象的方法,您可以参考我之前的文章:《自定义Javascript类》,下面进入本文的正题,看看如何使用ExtJS.define 方法自定义类。

ExtJS 中自定义类

在ExtJS中,我们同样定义一个Person类,首先看一下具体的代码:

Ext.define("Person", {
    Name: '',
    Age: 0,
    Say: function (msg) {
        Ext.Msg.alert(this.Name + " Says:", msg);
    },
    constructor: function (name, age) {
        this