Dear,大家好,我是“前端小鑫同学”,😇长期从事前端开发,安卓开发,热衷技术,在编程路上越走越远~
Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Linux——不需要本地开发 经验。
数据存储在应用开发中也是必不可少的一块功能,在Electron开发中支持将数据持久化到本地文件中,浏览器提供的介质和SQLite数据库中,SQLite作为一款轻量级的关系数据存储在移动端开发中也广泛应用。
因为不通的系统的文件目录不统一,Electron提供了专有的API来方便我们获取目录(app.getPath("userData");
)
常见的用户目录:
特殊的文件目录:
系统默认目录:
require('os').homedir();
/ C:\Users\<username>
require('os').homedir();
/ C:\Users\<username>\AppData\Local\Temp
文件读写操作:
确定文件目录:
const dataPath = path.join(app.getPath('userData'), 'data.json')
文件写入:
fs.writeFileSync(
dataPath,
JSON.stringify({ username: "admin", version: "0.0.1" }),
{ encoding: "utf-8" }
);
文件读取:
const content = fs.readFileSync(dataPath, { encoding: "utf-8" });
console.log("[ content ] >", content);
lowdb: https://github.com/typicode/lowdb,简单方便地使用本地JSON数据库的扩展。
electron-store: https://github.com/sindresorhus/electron-store,专门为Electron设计的存取用户配置,应用状态,缓存的扩展。(https://github.com/sindresorhus/electron-store)
安装node-sqlite3扩展:
npm install sqlite3 --build-from-source --runtime=electron --target=13.6.9 --dist-url=https://atom.io/download/electron
安装knexjs扩展:
npm install knex --save
《因sqlite未安装成功,调试后补充》这个地方真是一路坑,有没有踩过坑的留个地址😭
以上就是在Electron开发关于数据的存储方式,不同的数据适用于不同的方式存储,在实际开发中可灵活运用,浏览器储存的方式就不再进行介绍了。