zoukankan      html  css  js  c++  java
  • ext之关键字mixins、statics、require

    1.mixins

    说明:类似于面向对象中的多继承

    复制代码
        <script type="text/javascript">
    Ext.onReady(
    function () {
    //创建一个类,类名:TextClass,具有两个属性:A、B
    Ext.define('TextClass', {
    A:
    'a',
    B:
    'b'
    });
    //创建一个类,类名:TextClass,具有两个属性:A、B
    Ext.define('TextClass2', {
    C:
    'c',
    write:
    function () {
    alert(
    'A:' + this.A + ';B:' + this.B + ';C:' + this.C)
    }
    })
    Ext.define(
    'TextClass3', {
    //继承TextClass、TextClass2
    mixins: {
    TextClass:
    'TextClass',
    TextClass2:
    'TextClass2'
    }
    })
    var textClass = Ext.create("TextClass3")
    textClass.write();

    });
    </script>
    复制代码

    运行结果:

    2.statics

    说明:定义静态变量

    例子:

    复制代码
        <script type="text/javascript">
    Ext.onReady(
    function () {
    //创建一个类,类名:TextClass,具有两个属性:A、B
    Ext.define('TextClass', {
    A:
    'a',
    B:
    'b',
    statics: {
    C:
    'C'
    }
    });

    //没有实例化TextClass类
    Ext.Msg.alert('TextClass类的静态属性C的值是:', TextClass.C)
    });
    </script>
    复制代码

    执行结果:

    3.config

    说明:属性包装器,为属性提供get和set方法 

    例子:

    复制代码
        <script type="text/javascript">
    Ext.onReady(
    function () {
    //创建一个类,类名:TextClass,具有两个属性:A、B
    Ext.define('TextClass', {
    A:
    'a',
    B:
    'b',
    statics: {
    C:
    'C'
    },
    config: {
    configProperty:
    'how can i get this property'

    }
    });
    var textClass = Ext.create('TextClass');
    //通过set方法设置属性的值,注意,包装器会把属性的头字母大写
    textClass.setConfigProperty("set this property's value");
    //通过get方法展示属性值
    Ext.Msg.alert('configProperty属性的值是:', textClass.getConfigProperty());
    });
    </script>
    复制代码

    执行结果:

    3.Ext.require

    说明:动态加载js文件

    使用Ext.require加载js文件,首先要通过Ext.loader设置文件路径。

    例子:

    复制代码
        <script type="text/javascript">
    //设置Ext命名空间下的js文件所在文件夹
    Ext.Loader.setPath({
    Ext:
    'http://www.cnblogs.com/Scripts/ext-4.0.7-gpl/ext-4.0.7-gpl/src'
    });
    Ext.onReady(
    function () {
    //加载Ext.window.MessageBox类,位于http://www.cnblogs.com/Scripts/ext-4.0.7-gpl/ext-4.0.7-gpl/src/window/MessageBox.js文件中
    //注意:一个js文件只有一个类
    //注意:类名=命名空间名(这里就是EXT)+文件路径名(这里就是window/messagebox)
    Ext.require("Ext.window.MessageBox")
    });
    </script>
    复制代码

    执行结果:

    转自:http://www.cnblogs.com/animal/archive/2012/04/02/2430308.html

  • 相关阅读:
    深拷贝浅拷贝
    计算属性和监听,computed,watch
    字面量的引用与使用
    MYSQL 触发器
    JavaScript寻找对象方式
    JavaScript事件传播
    HTML 绑定事件
    JavaScript 中的 String()方法
    JavScript re模块
    JavScript Math函数的使用方法
  • 原文地址:https://www.cnblogs.com/smallrock/p/3499309.html
Copyright © 2011-2022 走看看