Я хочу удалить элементы контейнера подряд. Я использую .remove()
из EXTJS для удаления. Однако я не могу удалить оба контейнера за раз.
Я сделал это:this.remove(filter, test);
и он не работает. Есть идеи, как удалить оба контейнера с помощью remove()
.
Ниже приведен код:
somefunc: function (token, filter, op) {
var test = Ext.create({
xtype: 'container',
height: 30,
layout: {
type: 'hbox',
align: 'middle'
},
text: "AND"
});
var filter = Ext.create({
xtype: 'container',
height: 30,
cls: 'purge-filter-item',
layout: {
type: 'hbox',
align: 'middle'
},
items: [
this.typeCombo = new Ext.form.ComboBox({
emptyText: $L('Select a filter...'),
store: this.menuStore = new Ext.data.ArrayStore({
fields: ['key', 'title'],
data: this.getFilterValues()
})
})
]
});
this.remove(filter, test);
this.doLayout();
}
remove
может удалить только один компонент, я думаю, вам нужно вызвать его дважды
это сработало, спасибо!
this.remove([filter, test]);
Используйте массив, содержащий объекты, которые вы хотите удалить.
Если вам нужно их уничтожить, вы можете использовать второй параметр удаления следующим образом:
this.remove([filter, test],true);
Как вы думаете, почему дважды вызвать remove проблематично?