Каждый раз, когда я звоню Ext.create()
, новая кнопка подталкивается к форме. Но counter
все еще оставляют == 1
Почему свойства объектов ExtJS ведут себя как статические?
Если удалить items: []
и раскомментируйте Ext.apply(/*...*/)
все работает правильно.
Почему недвижимость items
ведет себя как статическая?
Ext.application({
name : 'Fiddle',
launch : function() {
Ext.define('TestForm', {
extend: 'Ext.form.Panel',
title: 'TestForm',
margin: 40,
items: [], // remove it
counter: 100,
initComponent: function() {
this.counter++;
/*Ext.applyIf(this, {
items: []
});*/
this.items.push({ xtype: 'button', text: 'test'+this.counter})
this.callParent(arguments);
},
renderTo: Ext.getBody()
})
Ext.create('TestForm');
Ext.create('TestForm');
Ext.create('TestForm');
}
});