Electron+vue3项目使用SQLite3数据库
在Electron+Vue3项目中使用SQLite3数据库,你需要做以下几步:
- 安装
sqlite3
模块。 - 在Electron主进程中引入并使用
sqlite3
。 - 在渲染进程(Vue3)中通过IPC与主进程通信。
以下是一个简单的示例:
- 安装
sqlite3
:
npm install sqlite3
- 在Electron主进程中(例如
main.js
):
const { app, ipcMain } = require('electron');
const sqlite3 = require('sqlite3').verbose();
let db;
app.whenReady().then(() => {
// 初始化数据库
db = new sqlite3.Database('path/to/your/database.db');
// 为渲染进程提供数据库操作的IPC
ipcMain.handle('sqlite-query', (event, sql, params) => {
return new Promise((resolve, reject) => {
db.all(sql, params, (err, rows) => {
if (err) {
reject(err);
} else {
resolve(rows);
}
});
});
});
});
- 在渲染进程中(Vue组件或Vuex action等):
import { ipcRenderer } from 'electron';
export default {
async fetchData() {
try {
const sql = 'SELECT * FROM your_table';
const params = [];
const rows = await ipcRenderer.invoke('sqlite-query', sql, params);
// 处理数据
} catch (error) {
console.error(error);
}
}
};
确保你的数据库路径是正确的,并且在生产环境中处理好数据库文件的路径问题。这个例子中使用了ipcMain.handle
来处理IPC通信,它返回Promise,可以更方便地处理异步操作。
评论已关闭