2014-04-26 73 views
0

我想顯示網格列中另一個存儲的值,但可以在顯示網格後加載存儲,這會導致其大小。我想要這樣的事情:推遲列值的呈現

renderer: function(value, metaData, record, rowIndex, colIndex, gridStore, view) { 
    var store = Ext.getStore('someBigStore'); 
    if (store.getCount() > 0) { 
     return store.getById(value).get('name'); // If store is already loaded show value immediately 
    } else { 
     store.on('load', function(){ 
      var displayValue = store.getById(value).get('name'); 
      // -> how to insert the displayValue into the right place of the grid ? 
     }); 
     return 'loading...' // show waiting message 
    } 
} 

我該如何歸檔?

+0

你真的不能。一旦商店加載,最好的辦法是刷新網格。 –

+0

@EvanTrimboli:看到我的回答 –

+0

它可能有效,但它不是一個好的解決方案。您應該使用API​​方法,而不是通過DOM進行拖網。 –

回答

0

好,我知道了,那裏是在框架中來做到這一點沒有任何功能,但有一點DOM瀏覽:

store.on('load', function() { 
    var row = Ext.fly(view.getNode(rowIndex)); 
    var cell = row.down('td:nth-child(' + (colIndex + 1) + ') .x-grid-cell-inner'); 
    cell.setHTML(getDisplayValue()); 
}, null, { single: true });