我有这个:
{
listeners['combobox[name="counterparty_id"]'] = {
afterrender: {
fn: this.onComboboxCounterpartyAfterrender,
scope: this
}
};
this.control(listeners);
}
// function which is being called after rendering the combobox
onComboboxCounterpartyAfterrender: function(combobox, eOpts){
// some code
},
那么,如何向onComboboxCounterpartyAfterrender
函数发送其他参数?
也许是这样的:
listeners['combobox[name="counterparty_id"]'] = {
afterrender: {
fn: this.onComboboxCounterpartyAfterrender,
scope: this,
params: someParameters
}
};
答案 0 :(得分:3)
有很多方法可以做到这一点。
首先,您可以使用eOpts。正如文档所述,eOpts是“传递给Ext.util.Observable.addListener的选项对象。”。因此,在您的示例中,您应该能够使用ePots.params来访问someParametsrs
其次,您可以使用Ext.bind()或Ext.pass()来传递参数。第一个是prepends,第二个是附加参数。
第三,你可以做Amit Aviv所建议的,这几乎是Ext.pass()所做的。
第四,如果可能的话,你可以使用范围。
答案 1 :(得分:1)
可能有更好的方法,但你可以这样做:
listeners['combobox[name="counterparty_id"]'] = {
afterrender: {
fn: function(combobox, eOpts) {
this.onComboboxCounterpartyAfterrender(combobox, eOpts, params)
}
...