ExtJs 基础框架(二)创建类之配置项以及过程

 

ExtJs 基础框架(二)创建类之配置项以及过程

 

 

ExtJs 基础框架(二)创建类之配置项以及过程

Ext.onReady(function(){
   
    //Ext.define 其他配置项
        
    //static,inhertableSatcics(子类可以继承)
    /**
    Ext.define('Person',{
        config:{
            name:'我是父亲'
        },
        statics:{
            static_id:'我是Person的id,不能别子类所继承'
        },
        inheritableStatics:{
            inheritableStatic_id:'我是Person的id,可以被继承'
        },
        constructor:function(config){
            var me = this;
            me.initConfig(config);
        }
    })
    
    //创建类
    Ext.define('User',{
        extend:'Person',
        config:{
            name:'bjsxt',
            age:10
        },
        alias:'uu',    //创建类别名
        alternateClassName:'uuu',    //给当前类的备用名
        constructor:function(config){
            var me = this;
            me.initConfig(config);
        }
    });
    //一定注意:实例对象无法使用静态属性和方法,用类名使用静态属性
    
//    var p = Ext.create('Person');
//    alert(p.static_id);    
    
    alert(Person.static_id);
    alert(Person.inheritableStatic_id);
    
    alert(User.static_id);
    alert(User.inheritableStatic_id);
    **/
    
    //mixins 混合的配置项,类似多继承
    /**
    Ext.define('Sing',{
        canSing:function(){
            alert('cansing...');
        }
    });
    Ext.define('Say',{
        canSay:function(){
            alert('cansay...');
        }
    });
    Ext.define('User',{
        mixins:{
            sing:'Sing',
            say:'Say'
        }
    });
    var u = Ext.create('User');
    u.canSay();
    u.canSing();
    **/

    //requires,uses
//    Ext.define('MyComponent',{
//        //需要Ext或者其他类的支持
//        //当前类初始化之前被加载
//        requires:['Ext.window.Window','Ext.button.Button'],
//        //当前列初始化之后被加载
//        uses:['Ext.window.Window','Ext.button.Button']
//    })
    
});