Extjs 3.4 Grid 的存储在重新配置后未定义

Posted

技术标签:

【中文标题】Extjs 3.4 Grid 的存储在重新配置后未定义【英文标题】:Extjs 3.4 Grid's store undefined after reconfigured 【发布时间】:2015-12-19 07:37:46 【问题描述】:

我在重新配置网格面板时遇到问题。我有一个 EditorGridPanel,它的商店是从自定义 columnModel 构建的

保存新设置后(决定显示或不显示某些列),我得到一个新的商店和一个新的列模型,然后我调用reconfigure 函数重新配置网格,如下所示:

grid.reconfigure(newStore, newColumnModel);

reconfigure 函数运行良好,但是当我单击复选框 (CheckboxSelectionModel) 选择一行时,我看到此错误“无法读取未定义的属性‘存储’”

我在 ExtJS 3.4 上工作。 在他们的 API 页面http://docs.sencha.com/extjs/3.4.0/#!/api/Ext.grid.GridPanel-method-reconfigure 上,他们警告说:

“请注意,重新配置 GridPanel 后,某些现有设置可能会失效。例如,配置的 autoExpandColumn 可能不再存在于新的 ColumnModel 中”

在这种情况下我应该怎么做才能使 CheckboxSelectionModel 像重新配置之前一样工作?

感谢您的帮助!

【问题讨论】:

【参考方案1】:

您需要进行一些调试或提供错误发生的位置。请提供有关该错误的更多信息。

我试图复制但我不能:https://fiddle.sencha.com/#fiddle/12rt

【讨论】:

谢谢你的信息。。经过调试,我发现代码又创建了一个CheckboxSelectionModel,错误是这个新的引起的。我更新了代码以不创建新的 CheckboxSM 如果它存在,错误现在消失了

以上是关于Extjs 3.4 Grid 的存储在重新配置后未定义的主要内容,如果未能解决你的问题,请参考以下文章

Extjs 3.4:网格中没有数据记录

extjs中设置列的编辑属性,用到Ext.grid.GridEditor?

extjs 动态存储模型网格列

ExtJS:重新加载数据存储而不重绘网格

在 extjs 3.4 中刷新面板中的数据视图

Extjs 3.4 同值合并