收藏
回答

writeFileSync无法重写文件

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug writeFileSync 微信iOS客户端 8.0.54 3.6.6

1、使用writeFileSync写入一个base64编码的图片到`${wx.env.USER_DATA_PATH}/qr.jpg`

2、从这个路径加载图片到image标签

3、返回上一夜,再次进入页面,更换base64内容,再次写入到`${wx.env.USER_DATA_PATH}/qr.jpg`

4、再从这个路径加载图片到image标签,图片没有变化

回答关注问题邀请回答
收藏

2 个回答

  • 社区技术运营专员--许涛
    社区技术运营专员--许涛
    11-25

    你好,请提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    11-25
    有用
    回复 3
  • 朱斌
    朱斌
    12-19

    writeFileSync写入是没问题的,你可以读出来比对

        fs.writeFileSync(src, base64Str, 'base64')

        const res = fs.readFileSync(src, 'base64')

        console.log(`compare ${base64Str == res}`)

        console.log(base64Str.slice(0,50))

        console.log(res.slice(0,50))

    目前小程序内所有canvas把用到的相同路径的图片都一并缓存了,导致更新文件并不会更新canvas显示的图片

    你要换显示的图片,就必须用新的路径

    12-19
    有用
    回复
登录 后发表内容