ExtJS:销毁窗口,配置'closeAction'设置为'隐藏'

时间:2013-03-08 11:44:36

标签: javascript extjs extjs4.1

我有一个closeAction窗口,在实例化时配置为'hide'

var myWin = Ext.create('Ext.window.Window', {
    ...
    closeAction:'hide',
    ...
});

close()上调用myWin因此只需隐藏窗口即可。我需要按照Sencha文档所隐含的destroy意义销毁窗口:

  

从DOM中删除窗口并销毁它和所有后代   组件。该窗口无法通过显示重新显示   show method。

我尝试了什么?我试过了:

  1. 直接在窗口对象上调用destroy

    myWin.destroy();
    
  2. 在致电closeAction之前将destroy设为close()

    win.closeAction='destroy';
    win.close();
    
  3. 在这两种情况下,myWin只是隐藏而不是被破坏。有什么想法吗?

2 个答案:

答案 0 :(得分:8)

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

调用myWin.destroy()后,结构被清除,无法使用myWin.show()重新调用窗口。

答案 1 :(得分:2)

你想破坏窗口吗?使用下面的代码

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