如何使用电子访问生产中的 sqlite3 数据库文件?

How can I access the sqlite3 database file in production with electron?

我有一个 electron 应用程序,我将它与 create-electron-app.

一起使用

我的电子主进程文件驻留在public文件夹中,我的sqlite3数据库.[=13也是如此=]

当我在开发中引用数据库时,它按预期工作,因为我可以访问路径: F:\www\project-name\public\api\db\demodb01

但在生产中路径不存在(隐藏在 app.asar 后面我会说): C:\Users\userName\AppData\Local\Programs\project-name\resources\app.asar\build\api\db\demodb01

如何在生产中定位数据库文件?

在您的应用程序中存储文件时,您应该使用 app.getPath('userData') 将它们存储在您的应用程序范围之外,这样可以使它们持久化。

nedb 是 Electron 应用程序的常见选择,因为它是用 JavaScript 编写的轻量级数据库。如果您还没有检查过,我建议您检查一下。

您还有另一种解决方案。请按照以下步骤操作:

  1. 首次安装electron-is-dev

  2. 在您的 main.js 文件中添加这些代码: main.js

  3. 现在 package.json 进行以下显着更改: package.json

谢谢。