javascript - localForage 迭代不适用于 JS 文件

标签 javascript indexeddb localforage

数据库中有6个key,我在浏览器控制台查看确认了。

下面的代码只循环了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 文件时,它工作正常。

DB 中的键是 1, 2, lastReminderKey, 3, 4, 5。 在控制台日志中,当从 JS 文件运行时,它打印:

1
2
lastReminderKey
Iteration has completed

这种行为的原因可能是什么?

最佳答案

您可能在两个地方使用了不同的 localforage 配置。尝试验证两个 localforage 实例是否具有完全相同的一组 namestoreNamedriver

您可以在选项对象上检查这些属性。

const options = localforage.config();

关于javascript - localForage 迭代不适用于 JS 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55351486/

相关文章:

javascript - jquery基于滚动的隐藏/显示

javascript - 使用 IndexedDB 时,如何使用不是键的索引删除多条记录?

javascript - LocalForage、图像和 Blob

javascript - Ajax 表单提交不加载新提交的数据

Javascript:当字符串连接时,新的正则表达式会破坏 for 循环迭代器

javascript - 文档就绪时触发更改事件

javascript - IDB : openCursor() is not a function

javascript - 从 AngularJS 外部触发更新/刷新

javascript - React Router 教程 v6.6.2 -- 数据更新功能未按预期运行