使用electron构建跨平台桌面应用教程

1.在这样一个场景,需要在用户进行登录系统后将某些数据给存储下来。

  • 简单的方法是使用内置的HTML5 API localstorage进行相关的数据保存,此缺点是localstorage只支持字符串格式数据,所以在每次存储中都需要JSON.stringify()然后需要使用的时候JSON.parse()一次,十分不方便。
  • 方法二针对有些场景需要把用户的数据存储在该应用的相关文件夹下,调用起来更加方便,基本的流程如下:
npm install fs-extra --save   //fs文件系统扩展插件

传送门:[https://github.com/jprichardson/node-fs-extra]

const fs = require('fs-extra');//获取fs-extra

const { remote } = require('electron'); //electron内置包

const configDir = remote.app.getPath('userData');//获取应用路径

(eg: 我的电脑上//C:\Users\67069\AppData\Roaming\Electron)

const _filedir = configDir + '/appData';//存放数据的文件夹名

fs.ensureDir(_filedir)//检查文件夹是否存在,存在返回true,不存在则创建该文件夹
.then(() => {
    fs.ensureFile(_filepath)//检查该文件是否存在,不存在则创建该文件
        .then(() => {
            console.log('create file success!');
            fs.writeJson(_filepath,{
                shiftData:[],
                name:1111,
                old:33333
            })
            console.log('用户信息存放在:'+_filedir)
        })
        .catch(err => {
            console.error(err);
        })
})
.catch(err => {
  console.error(err);
})

....未完待续。


猜你喜欢

转载自blog.csdn.net/xjl271314/article/details/78435429
今日推荐