我有一个使用本地sqlite数据库的Electron JS应用程序。 sqlite数据库是项目文件夹结构(lib文件夹)中的文件。该应用程序在测试期间工作得很好,但是当我在Mac上构建应用程序并启动.dmg文件时,它会收到错误消息,说它无法找到.sqlite数据库。
有没有办法让我在我的项目中使用sqlite数据库?或者是否有更简单的方法在Electron应用程序中进行本地存储?
谢谢。
答案 0 :(得分:1)
我发现这可以通过将SQLite文件写入本地用户的目录来完成:
const electron = require('electron');
const path = require('path');
const userDir = (electron.app || electron.remote.app).getPath('userData');
const dbPath = path.join(userDir, 'mydb.sqlite');
答案 1 :(得分:0)
您必须在 buildResources
中添加 extraResources
package.json
才能在生产中获取 SQLite 文件。
"build": {
"appId": "com.app.app",
"productName": "Electron APP",
"files": [
"build/**/*"
],
"directories": {
"buildResources": "build"
},
"extraResources": [
{
"from": "./db/",
"to": "db/",
"filter": [
"**/*"
]
}
],
},