数据库中有6个键,我通过在浏览器控制台中对其进行了确认。
以下代码仅循环3次,条件变为假后,它将停止。
localforage.iterate(function (value, key, iterationNumber) {
console.log(key);
if (key != lastReminderIdKey) {
//console.log(value);
}
}).then(function (value) {
console.log('Iteration has completed');
}).catch(function (err) {
console.log(err);
});
当此代码位于HTML文件中时,它可以正常工作。然后我将其移至JS文件,并且迭代/循环现在仅部分起作用。当我将其移回HTML文件时,它可以正常工作。
数据库中的键为1, 2, lastReminderKey, 3, 4, 5
。
在控制台日志中,当从JS文件运行时,将输出:
1
2
lastReminderKey
Iteration has completed
这种行为的原因可能是什么?
答案 0 :(得分:0)
您有可能在2个地方使用不同的localforage配置。尝试验证两个localforage实例是否具有完全相同的name
,storeName
和driver
集。
您可以在选项对象上检查这些属性。
const options = localforage.config();