我有一个导航视图。单击按钮时,我试图通过调用以下函数将另一个视图推送到此导航视图中:
showNewView: function () {
Ext.Viewport.getActiveItem().push({
title: 'New View',
xtype: 'newview'
});
这个新视图有一个 id some_id。
现在,当我多次调用此函数时,我收到以下警告:
[WARN][Ext.Component#constructor] Registering a component with a id (`some_id`)
which has already been used. Please ensure the existing component has been
destroyed (`Ext.Component#destroy()`.
我知道出现此警告是因为在第二次调用thie函数期间,正在使用相同的id创建一个新视图。并且id必须是唯一的。因此发出警告。
另外,我知道代替id,我可以使用itemId来引用该特定组件。
我想知道的是,如果我继续使用id,如何按照警告中的说明销毁现有组件?
我一开始创建它的方式有什么问题吗? Ext.Viewport.getActiveItem().push({ title: 'New View', xtype: 'newview' });
或者以上是否可以,我是否需要在某个时候销毁该组件?也许在流行音乐活动期间?如果是这样,怎么做?