Sto usando il quadro ExtJS e ho il seguente gestore che viene utilizzato esclusivamente come un gestore per un pulsante:Come aggiungere parametri aggiuntivi a un gestore ExtJS?
var myButtonHandler = function(button, event){
//code goes here
};
La mia definizione pulsante appare così:
var myButton = new Ext.Button({
id : 'myButton',
renderTo : 'mybutton',
text : 'Save',
handler : myButtonHandler,
scope : this
});
Come si può vedere , il conduttore riceve il "pulsante" e l'"evento" previsti. Tuttavia, mi piacerebbe passare alcune informazioni aggiuntive nel mio gestore. Come potrei farlo?
Questa è una risposta più elegante di quella di Seb. Il lavoro di creazione di un wrapper è nascosto da createDelegate. Facoltativamente, l'utente può aggiungere una proprietà personalizzata al pulsante e ispezionarla dal gestore. Continuo a preferire createDelegate. –
Quindi, come gestiresti questo all'interno della funzione ** myButtonHandler ** per usare i tuoi [parametri]? Solo myButtonHandler ([params])? – dmackerman
Sono andato avanti e ho modificato l'esempio per mostrare meglio cosa si può fare con createDelegate. Anche in Ext4 e SenchaTouch createDelegate è stato spostato fuori dal prototipo della funzione ed è ora accessibile solo da Ext.createDelegate (functionToDelegate, scope, args, appendOrInsertIndex) – Ballsacian1