首页 > 解决方案 > 在 EXTJS 中向“缓冲存储”添加新记录

问题描述

在我的应用程序中,我有一个带有缓冲存储的网格。单击网格行时,将显示警报。我想在网格中添加一个新行,即添加一个新记录来存储(在用户执行某些保存操作之前不应将其保存在后端)。如果用户选择这样做,也可以删除相同的添加记录。

目前尝试了以下方法..

var grid = Ext.ComponentQuery.query('grid')[0],
gridStore= grid.getStore();
var bufferedStoreMap = gridStore.getData().map[currentPage]; //currentPage = 1
var mapVal = bufferedStoreMap.value;

gridStore.totalCount++;
mapVal.unshift(Ext.create('Ext.data.Model',{name:'test'}));
grid.getView().refresh();

使用上面的代码,新记录被添加到存储中,但是像点击这样的网格事件不起作用。得到以下错误。 在此处输入图像描述

关于实现这一目标的任何想法?任何帮助将非常感激。

标签: extjsbuffered

解决方案


缓冲存储不支持本地修改,一旦通过服务器加载数据,它本质上就是一个只读数据源。


推荐阅读