Electron框架本身对于数据库并没有什么特别的封装,不过我们依然有许多可选项。对于一些简单的数据,我们可以使用Chromium的localStorage,而对于更复杂的数据,我们可以选择WebSQL(由于未能成为标准有废弃的可能)或是IndexedDB。如果我们的需求比较特殊,Chromium的数据存储方式不能满足我们的需求,我们也可以直接在主进程中使用NodeJS,操作一些更加复杂的数据文件或是数据库。
对于localStorage、WebSQL、IndexedDB这些数据存储方式,在Web前端/Web客户端编程/HTML5
章节中均有介绍,具体如何使用可以参考相关章节。
虽然IndexedDB等数据库是浏览器内置的功能,但是它不是某种「缓存」,实际上它的数据也是安全存储在磁盘中的,基于Electron开发的程序,我们一般也不用担心用户乱操作把持久存储的数据给清除的情况。
假如我们的工程名叫electron-demo01
,在Windows下,我们可以在~/AppData/Roaming
找到一个electron-demo01
文件夹,其中就包含持久化的数据。