1.使用小程序文件管理API (wx.getFileSystemManager())
2.1 判断要下载的文件是否存在(accessSync)于本地 通过 try 去判断 进入catch则 没有存在于本地
2.2 通过wx.downloadFile 设置filePath 下载文件保存本地
const fs = wx.getFileSystemManager()
try {
fs.accessSync(`${wx.env.USER_DATA_PATH}/addressData.json`)
} catch(e) {
wx.downloadFile({
url: 'https://oss-test.com/202306/1686214538.json',
filePath: `${wx.env.USER_DATA_PATH}/addressData.json`,
success: function (res) {}
})
}
3.读取(readFileSync)本地文件并使用 catch 处理未加载到数据 重新 wx.downloadFile 设置filePath 下载文件保存本地 并使用即可
try {
let arrBuffer = fs.readFileSync(`${wx.env.USER_DATA_PATH}/addressData.json`, 'utf8', 0)
let addressData = JSON.parse(arrBuffer)
console.log(addressData)
} catch(e) { ... }