加载 Store 之前的 ExtJS 渲染网格

Posted

技术标签:

【中文标题】加载 Store 之前的 ExtJS 渲染网格【英文标题】:ExtJS render grid before Store has loaded 【发布时间】:2013-07-31 07:43:54 【问题描述】:

我有一个可编辑的网格和一个从代理加载的商店。我使用 store.collect() 函数将组合框加载到网格的编辑器,问题是网格在 collect() 函数完成之前呈现自身,所以我得到一个空组合。如何确保加载商店后网格呈现?顺便说一句,如果我不使用 collect(),它工作正常。

这是我的网格编辑器组合:

editor: 
            xtype: 'combobox',
            store: store_ingredientes.collect('ALIMENTO_DESCRIPCION'),
            displayField: 'ALIMENTO_DESCRIPCION',
            queryMode: 'local',
            allowBlank: false
        

如果我在商店的加载事件中记录集合,它会按预期工作:

load: function()
            console.log( store_ingredientes.collect('ALIMENTO_DESCRIPCION'));
        

【问题讨论】:

【参考方案1】:

要等到商店加载,您可以使用:

yourStore.on('load', function(store, records, options)

        //this will be executed after store is loaded

    );

【讨论】:

这与我最初发布的加载功能几乎相同。我的问题是,由于商店加载是异步的,如何将网格渲染链接到该函数中?

以上是关于加载 Store 之前的 ExtJS 渲染网格的主要内容,如果未能解决你的问题,请参考以下文章

如何在将字段渲染到 Extjs 中的网格之前修改字段

extjs 有条件地渲染列

在 ExtJS 3 EditorGridPanel 中按渲染值排序

ExtJS组合框无法渲染

ExtJs Grid通过渲染器中的ajax填充列

在编辑主网格行时,rowBody 刷新丢失内部网格。 extjs 3..我可以重新渲染内部网格..吗?