2015-08-14 4 views
0

Я пытаюсь установить GridPanel на основе ArrayStore в окне, но независимо от того, что я делаю, он выглядит просто так, без данных строки внутри:ExtJS 3.0.0: GridPanel в окне с массивом ArrayStore не передает никаких данных

Вот мой код:

  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 не любит данные, потому что это не в его элементов (хотя это в магазине) массива:

То немногое, что я сделал не так?

Спасибо!

+1

set minheight to grid и попробуйте – Raghavendra

+0

Я пробовал minHeight, к сожалению, это тоже не сработало. – lilalfyalien

+0

попробуйте скрипку, я могу вам помочь – Raghavendra

ответ

0

Потому что я идиот ... Я использовал ArrayStore вместо JsonStore!

Смежные вопросы