ExtJS4 - итерация по магазину в сетке - PullRequest
1 голос
/ 21 марта 2012

Я хочу перебрать магазин и динамически создавать столбцы сетки.Когда я использую метод columns.push в событии onLoad Store, я получаю эту ошибку: «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'} );

Заранее спасибо

1 Ответ

1 голос
/ 21 марта 2012

Попробуйте добавить this.callParent(arguments), прежде чем делать что-либо еще в вашей функции initComponent.Таким образом, представление будет полностью создано, и вы сможете получить доступ к столбцам.

Также я предлагаю посмотреть reconfigure метод табличного представления для изменения хранилища и столбцов на лету.

Обновление: попробуйте использовать Ext.apply вместо columns.push:

Ext.apply(this, {
    columns: [ list of your columns ]
});

Обновление 2: нагрузка () асинхронная.Таким образом, вы можете рассмотреть создание сетки сначала с пустым столбцом, затем загрузить хранилище и заменить его новыми данными.

...