这是我的窗口和里面的表格:
Ext.define('App.view.Users.Update', {
extend: 'Ext.window.Window',
title: 'User',
width: 250,
id: 'UpdateWindowUsers',
defaultType: 'textfield',
items: [{
xtype: 'UpdateFormUsers'
}],
buttons: [
{ text: 'Save', id: 'submitUpdateFormButtonUsers'},
{ text: 'Cancel', id: 'cancelUpdateFormButtonUsers'},
]
});
Ext.define('App.view.Users.UpdateForm', {
extend: 'Ext.form.Panel',
alias: 'widget.UpdateFormUsers',
layout: 'form',
id: 'UpdateFormUsers',
bodyPadding: 5,
defaultType: 'textfield',
items: [{
fieldLabel: 'Id',
name: 'id',
hidden: true
},{
fieldLabel: 'username',
name: 'username',
allowBlank: false,
},{
fieldLabel: 'password',
name: 'password',
minLength : 5,
allowBlank: false
},{
fieldLabel: 'Email',
name: 'email',
minLength : 5,
vtype: 'email',
allowBlank: false
},{
fieldLabel: 'first name',
name: 'first_name',
allowBlank: false
},{
fieldLabel: 'last name',
name: 'last_name',
allowBlank: false
}],
});
它在一个文件中:“ App/view/Users/Update.js ”。
所以,我正在创建一个对象:
var win = Ext.create('App.view.Users.Update');
它是用一个按钮创建的。但是当我关闭窗口win.close()
并关闭“边框”布局内的“选项卡”时,当我再次按下按钮以创建相同的窗口时,它说(在我的控制台中)我正在重新创建一个对象再次使用相同的“id”。它已经在 Ext.AbstractManager 中注册。
我怎样才能完全摧毁物体?也许与Ext.AbstractManager.unregister(win); 某物?
如果您需要更多代码,没问题。:) 谢谢。
附言
我得到了对我的窗口的引用:
var window = Ext.ComponentQuery.query('#UpdateWindowUsers')[0];
window.close();
window.close() 实际上会破坏其中的面板吗?