Javascript 扩展ExtJS4中的messagebox

Javascript 扩展ExtJS4中的messagebox,javascript,extjs4,messagebox,extjs-mvc,Javascript,Extjs4,Messagebox,Extjs Mvc,我创建了一个扩展ext.window.messagebox的新视图类 但当我试图展示它时,它给了我一个错误: Uncaught TypeError: Cannot call method 'setVisible' of null 我的代码: Ext.define('view.forms.MyBox', { extend : 'Ext.window.MessageBox', alias : 'widget.info', xtype : 'forms-info', resizable : fa

我创建了一个扩展ext.window.messagebox的新视图类 但当我试图展示它时,它给了我一个错误:

Uncaught TypeError: Cannot call method 'setVisible' of null 
我的代码:

Ext.define('view.forms.MyBox', {
extend : 'Ext.window.MessageBox',
alias : 'widget.info',
xtype : 'forms-info',

resizable : false,  
//closable : false --> removed 
layout : 'vbox',
padding : 5,
width : 400,
height : 160,

showMessage: function() {

    console.log('show message')

    var me = this;

    me.show({           
        title: 'Title foo!',
        msg: 'test',
closable : false, // added here
        icon: Ext.MessageBox.WARNING,            
    });     
}
}); //eoc myBox

造成这种情况的可能原因是什么?

问题是您将“closeable”拼写错误-您将其拼写为“closeable”


编辑:抱歉-这不正确。我已经删除了该示例。

您在哪里创建了消息实例

我认为你需要在你的代码之后做这件事

var win = Ext.create('iportfolio.lib.view.forms.MyBox',{});
win.show()


我希望这会对您有所帮助。

我想您需要添加以下内容:
this.callParent(参数)
请附上完整的代码确定,我通过删除closable:false配置并将其添加到我的身上来解决此问题。show()函数。。。但我还是不明白为什么?我更新了我的代码…我认为它不正确,您可能已经删除了错误,但api中的实际拼写是“可关闭”而不是“可关闭”。尽管如此,“关闭工具”仍会出现。