ExtJS Grid JSON 存储代理错误

Posted

技术标签:

【中文标题】ExtJS Grid JSON 存储代理错误【英文标题】:ExtJS Grid JSON Store Proxy Error 【发布时间】:2010-10-09 00:11:35 【问题描述】:

我正在显示一个 ExtJS 网格。除了 Json 商店中关于代理的部分外,我得到了所有正确的东西。当我尝试显示它时会引发错误:

this.proxy 未定义 Ext.data.Store=function(A)this.data=n...ta=C;this.resumeEvents();return B);

我发现我需要在商店里做点什么,但不确定是什么。变量列表数据具有 Json Array 字符串。请任何帮助都非常感谢。谢谢

var listData = <%= aItems %> ;
var AIGrid;

Ext.onReady(function () 
    var AIRecord = Ext.data.Record.create([
        name: "ID",
        type: "int",
        mapping: "ID"
    , 
        name: "WSTITLE",
        type: "string",
        mapping: "WSTITLE"
    , 
        name: "REQ_ATTUID",
        type: "string",
        mapping: "REQ_ATTUID"
    , 
        name: "DESCRIPTION",
        type: "string",
        mapping: "DESCRIPTION"
    , 
        name: "RES_ATTUID",
        type: "string",
        mapping: "RES_ATTUID"
    , 
        name: "RESOLUTION",
        type: "string",
        mapping: "RESOLUTION"
    , 
        name: "START_TIME",
        type: "string",
        mapping: "START_TIME"
    , 
        name: "END_TIME",
        type: "string",
        mapping: "END_TIME"
    ]);

    var AIreader = new Ext.data.JsonReader(
        root: "root",
        id: "ID"
    , AIRecord);

    var AIstore = new Ext.data.Store(
        nocache: true,
        data: listData,
        reader: AIreader
    );

    var AIcol = new Ext.grid.ColumnModel([
        header: 'ID',
        readOnly: true,
        dataIndex: 'ID',
        width: 30
    , 
        header: 'Work Step',
        dataIndex: 'WSTITLE',
        width: 200,
        readOnly: true
    , 
        header: 'Requester',
        dataIndex: 'REQ_ATTUID',
        width: 80,
        readOnly: true
    , 
        header: 'Description',
        dataIndex: 'DESCRIPTION',
        width: 300,
        readOnly: true
    , 
        header: 'Resolver',
        dataIndex: 'RES_ATTUID',
        width: 80,
        readOnly: true
    , 
        header: 'Resolution',
        dataIndex: 'RESOLUTION',
        width: 300,
        readOnly: true
    , 
        header: 'Start',
        dataIndex: 'START_TIME',
        width: 100,
        readOnly: true
    , 
        header: 'End',
        dataIndex: 'END_TIME',
        width: 100,
        readOnly: true
    ]);

    AIcol.defaultSortable = true;

    AIGrid = new Ext.grid.GridPanel(
        store: AIstore,
        renderTo: 'listgrid',
        cm: AIcol,
        enableColLock: true,
        title: 'Open Action Items',
        width: 900,
        height: 500,
        selModel: new Ext.grid.RowSelectionModel(
            singleSelect: true
        )
    );

    AIGrid.store.load();

);

【问题讨论】:

【参考方案1】:

我得到了答案。通过互联网进行一些额外的研究。我使用 MemoryProxy 加载本地数据。解决了这个问题。耶!!

【讨论】:

以上是关于ExtJS Grid JSON 存储代理错误的主要内容,如果未能解决你的问题,请参考以下文章

ExtJS Grid 呈现的行数超过了 pagesize 中指定的行数

无法在 ExtJS 中使用代理保存数据

Ext JS 4.2 中的分页内存代理等效技术是啥

如何在使用代理在 ext js 商店中发布请求时发送 JSON

ExtJS 4:使用代理加载的数据存储显示 0 长度

EXTJS 4 网格与分页不起作用---存储代理问题