ExtJS:创建动态存储\ grid

时间:2015-09-14 13:01:21

标签: extjs dynamic proxy grid store

Hello Guys即时通过动态存储我可以从数组中获取数据 并创建一个商店,但如果我尝试将列和数据加载到我的网格,我得到“未捕获的TypeError:无法读取未定义的属性'getProxy'”

控制器:

parquet

window.js:

  onSqlChange: function (gridPanel, value) {
var me = this;

Ext.Ajax.request({
    url: '{url action=getSqlDetails}',
    params: {
    fileName: value
    },
    success: function (response) {
    var text = JSON.parse(response.responseText);
    //console.log(text);
    var grid = me.mainWindow.grid;
    var columns = text.columns;
    var cols = new Array();
    columns.forEach(function (item) {
        cols.push({
        name: item,
        type: 'string'
        });
    });

    var SqlResult = Ext.create('Ext.data.Store', {
        fields: cols,
        proxy: {
        type: 'ajax',
        url: '{url action=getSqlDetails}',
        reader: {
            type: 'json',
            root: 'data'
        }
        },
    });

    grid.reconfigure({
        columns: columns,
        store: SqlResult
    });
    grid.show();
    }
});
}

});

1 个答案:

答案 0 :(得分:2)

我可以使用来自响应json的text.data直接填充商店中的数据,而不是再次调用ajax

var SqlResult = Ext.create('Ext.data.Store', {
        fields: cols,
        data:text.data
    });