Extjs 自定义组件注册3.x是reg 而4.x是define

来源:互联网 发布:淘宝店铺被永久封店 编辑:程序博客网 时间:2024/06/09 11:27

//Ext JS 3.x class definition
MyApp.LoginWindow = Ext.extend(Ext.Window, {
    title: 'Log in',
 
    initComponent: function() {
        Ext.apply(this, {
            items: [
                {
                    xtype: 'textfield',
                    name : 'username',
                    fieldLabel: 'Username'
                },
                ...
            ]
        });
 
        MyApp.LoginWindow.superclass.initComponent.apply(this, arguments);
    }
});
 Ext.reg('MyApp.LoginWindow',MyApp.LoginWindow);


之后便可以使用xtype   MyApp.LoginWindow 来创建该组件,

但是extjs4.x 是使用define来创建自定义组件,并注册xtype


//Ext JS 4.x class definition
Ext.define('MyApp.LoginWindow', {
    extend: 'Ext.Window',
 
    title: 'Log in',
 
    initComponent: function() {
        Ext.apply(this, {
            items: [
                //as above
            ]
        });
 
        MyApp.LoginWindow.superclass.initComponent.apply(this, arguments);
    }
});

 


Ext.define('Ext.ux.form.MultiSelect', {    extend: 'ClassNameYouAreExtending',    alias: 'widget.multiselect'});

xtype 是 

'multiselect'

同时函数内部,使用的控件名是 

Ext.ux.form.MultiSelect






原创粉丝点击