私はSencha Touchでカスタムイベントを発生させようとしていますが、それは発生可能なイベントに追加されているようです。イベントに応答していないようです。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 , ' '));
}
リスナーはこちらのフォームでフィールドに適用される
イベントは、このフォーム体であり、ここでinstantinatedされます:
{
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);
}
}
},
なぜ私はcでイベント応答の呼び出しを見ることができないのですかオンソール?イベントが追加され、イベントが発生するのが見えますが、実際にイベントを実行してコンソールのステートメントに応答したことはありません。私はコンソールに何のエラーも受けないので、ここで何が起こっているのか、多少の損失がありますか?
'console.log(Ext.getCmp(" usersForm "))を実行してみてください。何が表示されるのかを確認してください。 – mowwwalker