Я пытаюсь запустить пользовательское событие в sencha touch, и оно, кажется, добавляется к событиям, которые могут быть запущены, и, похоже, срабатывает, но мой слушатель, похоже, не отвечает на событие. *
событие происходит здесь, где это тело формы:
Ext.apply(this, {
scroll: 'vertical',
dockedItems: [ titlebar, buttonbar ],
items: [ fields ],
listeners: {
beforeactivate: function() {
var saveButton = this.down('#userFormSaveButton');
saveButton.setText('Submit');
this.addEvents('cityUpdate');
console.log('event added');
},
deactivate: function() {
this.resetForm();
}
}
});
Событие запускается здесь:
if (result.data != 'false' && result.data.state) {
Ext.getCmp("usersForm").fireEvent('cityUpdate', result.data.towns);
console.log('event fired');
alert('Your town is ' + result.data.towns + ' ' + result.data.state.replace( /\+/g , ' ' ));
}
Затем слушатель применяется к полю в форме здесь:
{
xtype: 'textfield',
name: 'city',
label: 'City*',
placeHolder: 'New York',
useClearIcon: true,
id:'city',
listeners: {
cityUpdate: function(city) {
console.log('event reponse' , this.fieldEl.dom , city);
}
}
},
Может кто-нибудь объяснить мне, почему я не могу увидеть ответный вызов события в консоли? Я вижу добавленное событие и событие сработало, но мне кажется, что я никогда не получаю событие для фактического запуска оператора консоли, отвечающего на событие. Я не получаю ошибок в консоли, так что я в некоторой растерянности относительно того, что здесь происходит?