首页 > 代码库 > ExtJs006类别名、备用名

ExtJs006类别名、备用名

Ext.onReady(function () {    //Ext.define 其他配置项       //别名、备用名    Ext.define("User", {        config: {            name: ‘hhh‘,            age:10        },        alias: ‘uu‘,//起别名    底层代码在Ext.ClassManger        alternateClassName: ‘uuu‘,//备用名字 和alias差不多    //给当前类一个备用名 底层代码在Ext.ClassManger         constructor: function (config) { //构造器            var me = this;            me.initConfig(config); //初始化配置        }            });    //var u = Ext.create(‘User‘);     var u1 = Ext.create(‘uuu‘); //通过别名一样可以创建User类    //var u2 = Ext.create(‘uu‘);    alert(u1.getName()); //注意:这里的调用方式    alert(u1.getAge());        Ext.define(‘My.sample.Person‘, {        config: {            name: ‘Mr. Unknown‘,            age: 0,            gender: ‘Male‘        },        alias: ‘uu‘,//起别名    底层代码在Ext.ClassManger        alternateClassName: ‘uuu‘,    //给当前类一个备用名 底层代码在Ext.ClassManger        hhh:‘aaa‘,        constructor: function (config) {            this.initConfig(config);            return this;        }     });    var u = Ext.create(‘My.sample.Person‘);    var u1 = Ext.create(‘uu‘);    var u2 = Ext.create(‘uuu‘);    alert(u2.config.name);    alert(u2.config.age);    alert(u2.hhh);    */            //statics(子类不能继承) inheritableStatics(子类可以继承) 给当前类定义静态方法或属性    /*    Ext.define(‘Person‘, {        config: {            name:‘父类‘        },        statics: {    //静态的方法或属性            static_id: ‘我是Person的id,不能被子类所继承!!‘        },        inheritableStatics: {    //静态的方法或属性            inheritableStatics_id: ‘我是Person的id,我可以被子类继承!!‘        },        constructor: function (config) {            var me = this;            me.initConfig(config);        }    });    //一定注意:!!!!!//实例对象是无法使用静态属性或方法的    //var p = Ext.create(‘Person‘);    //alert(p.static_id);        //用类名去使用静态属性:!!!!    //    alert(Person.static_id);    //    alert(Person.inheritableStatics_id);    Ext.define(‘User‘, {        extend: ‘Person‘,        config: {            age: 20        }    });    alert(User.static_id);  //undefined    alert(User.inheritableStatics_id);        */    /*     //mixins 混合的配置项,可以多继承的配置    Ext.define("Sing", {         canSing: function () {            alert(‘canSing方法,自定义‘);        }    });    Ext.define("Say", {        canSay: function () {            alert(‘canSay,,,‘);        }    });    Ext.define(‘User‘, {        mixins: {            sing: "Sing", //相当于继承Sing类,可以通过User调用Sing里面的方法            say:"Say"        }    });    var u = Ext.create("User"); //注意大小写    u.canSay();    u.canSing();     */         //^_^伪代码说明: requires 和 uses 以及  singleton    /**    Ext.define(‘MyComponent‘,{        //可能需要Ext或者是其他的类做支持        //requires加载需要的类时机是:当前类初始化之前被加载        //requires:[‘Ext.window.Window‘,‘Ext.button.Button‘]         //uses加载需要的类时机是:当前类初始化之后被加载        //uses:[‘Ext.form.Panel‘,‘Ext.grid.Panel‘]        //singleton:true    //当前的类就被当做一个单例对象    });    */  })

 

ExtJs006类别名、备用名