【问题标题】:ExtJS 3.0.0: GridPanel in a Window with an ArrayStore not rendering any dataExtJS 3.0.0:带有 ArrayStore 的窗口中的 GridPanel 不呈现任何数据
【发布时间】:2015-08-14 13:14:31
【问题描述】:

我正在尝试将一个由 ArrayStore 驱动的 GridPanel 放在一个窗口中,但无论我做什么,它看起来都像这样,里面没有数据行:

这是我的代码:

           var ticketsStore = new Ext.data.ArrayStore
            (
                {
                    autoDestroy: false,
                    remoteSort: false,
                    data: result,
                    fields:
                    [
                        { name: 'articleId', type: 'int' },
                        { name: 'heatTicketRef', type: 'string' },
                        { name: 'username', type: 'string' },
                        { name: 'dateLinked', type: 'date' }
                    ]
                }
         );

        var ticketsGrid = new Ext.grid.GridPanel({
            store: ticketsStore,
            id: this.id + 'ticketsGrid',
            viewConfig: {
                emptyText: 'No data'
            },
            autoShow: true,
            idProperty: 'heatTicketRef',
            columns: [
                { id: 'heatTicketRef', header:"Ticket ID", width: 100, dataIndex: 'heatTicketRef', sortable: false },
                { header: "User", width: 100, dataIndex: 'username', sortable: false },
                { header: "Date Linked", width: 100, dataIndex: 'dateLinked', xtype: 'datecolumn', format: 'j M Y h:ia', sortable: false }
            ]
        });
        var window = new Ext.Window
          (
            {
                renderTo: Ext.getBody(),
                id: this.id + 'linkedHeatTickets',
                closable: true,
                modal: true,
                autoHeight: true,
                width: 500,
                title:'Linked Heat Tickets',
                resizable: false,
                listeners:
                {
                    close: function () { // do something }
                },
                items:
                {
                    style: 'padding:5px;',
                    items: ticketsGrid
                },
                buttons:
                {
                    text: 'Close',
                    handler: function () {
                        window.close();
                    }
                }
            }
        );

        window.show();

当我调试时,我可以看到我的“结果”对象是健康的,并且 ArrayStore 的长度是正确的:

但是 GridPanel 不喜欢数据,因为它不在它的 items 数组中(虽然它在 store 中):

我做错了什么小事?

谢谢!

【问题讨论】:

  • 将 minheight 设置为 grid 并尝试
  • 我试过 minHeight,不幸的是也没有用。
  • 试试小提琴我可以帮你
  • 我刚试过,但由于某种原因,Fiddlr 的 ExtJS loade 没有 ArrayStore...jsfiddle.net/#&togetherjs=E4KqfMI17p
  • 删除类型并尝试

标签: javascript extjs window extjs3 gridpanel


【解决方案1】:

因为我是个白痴……我用的是 ArrayStore 而不是 JsonStore!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多