Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ExtJS:使用config'销毁窗口;关闭操作';设置为';隐藏&x27;_Javascript_Extjs_Extjs4.1 - Fatal编程技术网

Javascript ExtJS:使用config'销毁窗口;关闭操作';设置为';隐藏&x27;

Javascript ExtJS:使用config'销毁窗口;关闭操作';设置为';隐藏&x27;,javascript,extjs,extjs4.1,Javascript,Extjs,Extjs4.1,我有一个窗口,在实例化时配置为“隐藏”: var myWin = Ext.create('Ext.window.Window', { ... closeAction:'hide', ... }); 因此,在myWin上调用close()。我需要按照Sencha文档中所暗示的destroy销毁窗口: 从DOM中删除窗口并销毁它和所有子体 组件。该窗口将无法通过重新显示 显示方法 我试了什么?我试过: 直接在窗口对象上调用destroy: myWin.destroy();

我有一个窗口,在实例化时配置为
“隐藏”

var myWin = Ext.create('Ext.window.Window', {
    ...
    closeAction:'hide',
    ...
});
因此,在
myWin
上调用
close()。我需要按照Sencha文档中所暗示的
destroy
销毁窗口:

从DOM中删除窗口并销毁它和所有子体 组件。该窗口将无法通过重新显示 显示方法

我试了什么?我试过:

  • 直接在窗口对象上调用
    destroy

    myWin.destroy();
    
  • 在调用
    close()
    之前,将
    closeAction
    设置为
    destroy

  • 在这两种情况下,
    myWin
    只是隐藏而不是销毁。有什么想法吗?

    方法
    destroy()
    应该成功地从DOM中删除窗口对象。为了说明这一点,您可以查看中的基本示例


    调用
    myWin.destroy()
    后,结构被清除,无法使用
    myWin.show()
    重新调用该窗口。是否要销毁该窗口。使用下面的代码

    Ext.getCmp('Window Id').destroy();    
    

    使用
    destroy()
    它已完全销毁:。@VisioN感谢您的评论。你是如何检查它是被隐藏还是被破坏的?在我的例子中,我能够重新显示窗口,这就是为什么我确定它是隐藏的,没有被破坏。我已经更新了上面评论中的提琴,以便在删除之前和之后显示
    body
    的内容。通常,您可以使用ChromeDevTools或Firebug。在
    destroy()
    的情况下,DOM结构将被删除,如果您尝试在之后调用
    show()
    ,JS将引发一个错误;请将此添加为答案,明确说明我在问题中关于
    destroy()
    的断言是不正确的-我会将您的答案标记为正确答案。谢谢
    Ext.getCmp('Window Id').destroy();