10

我试图测试我在 firebug 控制台上编写的脚本,我认为脚本很简单。当我运行脚本时,我得到了这个错误 me.dokedItems is undefined。这是我从 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();

感谢您帮助找出代码有什么问题

4

2 回答 2

14

我在做的时候遇到了这个错误

Ext.define('blah', {

    initComponent: function(){
        //do stuff
    }
});

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

this.callParent(arguments);

在 initComponent 的末尾。有用!

于 2014-07-24T16:41:15.730 回答
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(); 
于 2012-07-18T07:22:35.297 回答