ExtJS中的me.dockedItems错误

aup*_*ali 8 firebug extjs4

我试图测试我在firebug控制台上编写的脚本,我认为脚本很简单.当我运行脚本时,我得到了这个错误me.dockedItems是未定义的.这是我从Firefox的firebug控制台运行的代码:

Ext.create('Ext.window.Window',{
    title : 'Login',
    width : 400,
    height : 500,
    initComponent : function() {
        var me = this;

        var usernameField = Ext.create('Ext.form.field.Text',{
            fieldLabel : 'Net ID',
            allowBlank : false,
            labelWidth : 150,
            width : 150,
            emptyText : 'Net ID'
        });

        var passField = Ext.create('Ext.form.field.Text',{
            fieldLabel : 'Password',
            allowBlank : false,
            labelWidth : 150,
            width : 150,
            emptyText : 'Pass'
        });

        this.items = [usernameField,passField];
        this.callParent(arguments);
    }
}).show();
Run Code Online (Sandbox Code Playgroud)

感谢您帮助我找到代码的错误

Jon*_*Raa 12

这样做时我遇到了这个错误

Ext.define('blah', {

    initComponent: function(){
        //do stuff
    }
});
Run Code Online (Sandbox Code Playgroud)

事实证明这个问题有点指向正确的方向,但如果你不打电话,你也会得到这个神秘的错误

this.callParent(arguments);
Run Code Online (Sandbox Code Playgroud)

在initComponent的末尾.有用!


Eva*_*oli 5

创建实例时不要覆盖initComponent.

Ext.create('Ext.window.Window', {
    title: 'Login',
    width: 400,
    height: 500,
    items: [{
        xtype: 'textfield',
        fieldLabel: 'Net ID',
        allowBlank: false,
        labelWidth: 150,
        width: 150,
        emptyText: 'Net ID'
    }, {
        xtype: 'textfield',
        fieldLabel: 'Password',
        allowBlank: false,
        labelWidth: 150,
        width: 150,
        emptyText: 'Pass'
    }]
}).show(); 
Run Code Online (Sandbox Code Playgroud)