我想迭代遍历商店并动态制作网格列。当我在Store的onLoad事件中使用columns.push方法时,我收到此错误:“headerCtCfg未定义”。这是我的代码:
Ext.define('App.view.UserList' ,{
extend: 'Ext.grid.Panel',
alias : 'widget.userlist',
store: 'Users',
initComponent: function() {
var store = Ext.getStore( this.store );
store.on('load', function () {
var columns = this.columns = [];
columns.push( {header: 'H', dataIndex: '0'} );
先谢谢你
答案 0 :(得分:1)
尝试在initComponent函数中执行任何其他操作之前添加this.callParent(arguments)
。这样就可以完全创建视图,并且您可以访问列。
另外,我建议您查看tableview的reconfigure
方法,以便动态更改商店和列。
更新:尝试使用Ext.apply
代替columns.push:
Ext.apply(this, {
columns: [ list of your columns ]
});
Update2:load()是异步的。因此,您可以考虑首先使用虚拟列创建网格,然后加载存储并将其替换为新数据。