javascript - 我如何从我的 Service Worker 访问我的 Dexie 数据库?

标签 javascript service-worker progressive-web-apps offline dexie

我正在制作一个离线的 ProgressiveWebApp,并且我的 myDatabase.js 文件中有一个填充的 dexie 数据库。
我想从我的服务人员那里访问这个数据库,但是当我尝试 db.MijnTable 时。 出现数据库未定义的情况。
如何链接或访问 Service Worker 中的数据库?
这必须离线工作!

我尝试将我的数据库文件与
链接 importScripts('tours/mycompany/js/myDatabase?js');
但这不起作用,你知道为什么吗?

最佳答案

您的服务工作人员需要导入 dexie,并且您应该在服务工作人员本身或它将导入的脚本中声明您的数据库。

您还可以使用 es6 导入并使用 webpack 编译服务工作线程,但无论如何,数据库实例必须位于服务工作线程内。您还可以在 DOM 中拥有另一个与同一个数据库通信的数据库实例。

关于javascript - 我如何从我的 Service Worker 访问我的 Dexie 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61409661/

相关文章:

javascript - 使用 ES6 导出样式表

javascript - AngularJS:$parse 将数字字符串转换为数字

javascript - Service Workers 缓存不更新

angular - 定期检查 service worker 更新

javascript - 计算 Canvas 渐变的旋转

javascript - "undefined"结果使用 FileOpener Phonegap Android 并无法打开视频文件?

firebase - 服务 worker 事件waitUntil()被传递了一个 promise ,但被 'TypeError: b is null'拒绝

service-worker - 在开发模式下禁用 Service Worker。

node.js - 使用 Angular2 的 Service Worker 推送通知

react-native - 有没有办法保护数据不被 PWA 抓取?