扩展如何将参数传递给组件配置



我有这个代码:

Ext.define('...', {
extend: 'Ext.container.Container',
...
config: {
mydata: [],
myname: '',
myid: null
},
items: [
...
{
xtype: 'button',
text: 'Go',
tooltip: 'Click here',
listeners: {
click: function (item, e, eOpts) {
var config = item.up('container').config;
console.log('Data', config.mydata, ' Name', config.myname, ' Id', config.myid);                                            
}
}
}
],
constructor: function () {
this.callParent(arguments);
},
initComponent: function () {
this.initConfig({
mydata: ['Data1','Data2'],
myname: 'Hello',
myid: 10
});
}
});

当单击按钮时,它会响应Data [] Name '' Id null,配置默认定义中的数据完全相同...如何以正确的方式设置此初始配置?

您可以在 initComponent 中应用所需的参数:

initComponent: function () {
Ext.apply(this, {
config: {
mydata: ['Data1','Data2'],
myname: 'Hello',
myid: 10
}
});
this.callParent(arguments);
}

最新更新