我有一个 IndexedDB,其中包含页面上各种元素的属性。我在其中一个属性上有一个索引,我使用一个键范围来获取特定的结果列表。
var key = IDBKeyRange.bound(10, 20);
var cursor = store.index('property').openCursor(key);
我遇到的问题是cursor.onsuccess
功能。它似乎为结果集中的每个结果执行。因此,一旦解析了所有结果,我就无法执行回调函数。
cursor.onsuccess = function (e) {
var cursor = e.target.result;
if (cursor) {
if (cursor.value.prop1 > 30 && cursor.value.prop2 < 80) {
// Do stuff with result
someArray.push({
prop1: cursor.value.prop1,
prop2: cursor.value.prop2
}):
}
}
cursor.continue();
};