我如何从Dojo dstore中删除所有项目?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何从Dojo dstore中删除所有项目?相关的知识,希望对你有一定的参考价值。
我无法从dstore中删除所有项目。我正在尝试这样做,似乎应该可以使用,但是最后却失败了:
var TrackableMemory = declare([ Memory, Trackable ]);
var userMem = new TrackableMemory({
data: {the data...},
idProperty: '_id'
});
userMem.forEach(function (userObj) {
userMem.remove(userObj._id);
});
我在this fiddle中提出了一个有效的(或不起作用的)示例。当找不到最后一条记录时,请参阅控制台的“无法读取未定义的属性'_id'的错误”错误。
我还有其他东西要连接到此商店实例,所以我不能仅仅通过重新定义userMem
来重置所有内容。
我在做什么错?如何从dstore中删除所有项目?
答案
原来是修改我要遍历的数组的一个简单的JS数组问题。用简单的for
向后循环遍历数组:
userMem.fetch().then(function (users){
for (var i = users.length - 1; i >= 0; i--) {
userMem.remove(users[i]._id);
}
});
另一答案
这对我有用
// Forget all data
myGrid.store.data = [];
// Refresh the grid
myGrid.refresh();
以上是关于我如何从Dojo dstore中删除所有项目?的主要内容,如果未能解决你的问题,请参考以下文章
Dojo dgrid dstore 集合 - “或”过滤器不起作用