收藏
回答

关于wx.getFileSystemManager()写入的文件如何持久化的问题?

需求描述:

如果通过小程序的api在手机端存储一个持久化的数据(除非用户手动清除存储数据)

场景:

我想往本地存储一个持久化的版本号version,根据本地存储的version和后台的version作对比,如果后台version>本地的version就做清除本地缓存的操作

问题:

我将小程序的浏览记录清除后,缓存和用writeFileSync写入的文件都会被清除掉,有没有清除浏览记录依然存在的存储技术

代码:

const fs = wx.getFileSystemManager()
    fs.getFileInfo({
      filePath: `${wx.env.USER_DATA_PATH}/version.txt`,
      success: () => {
        let versionTxt = fs.readFileSync(`${wx.env.USER_DATA_PATH}/version.txt`, 'utf8');
        let versionJson = JSON.parse(versionTxt);
        let version = versionJson.userInfo.version;
        console.log('versionTxt', versionJson, version);
      },
      fail: (e) => {
        let data = {
          userInfo: {
            version: '1.0.0'
          }
        };
        fs.writeFileSync(`${wx.env.USER_DATA_PATH}/version.txt`, JSON.stringify(data), 'utf8');
        let version = data.userInfo.version;
        console.log('fail', e);
      }
    })
回答关注问题邀请回答
收藏
登录 后发表内容
问题标签