收藏
评论

base64图片存本地(得到本地路径)

需求:

    目前需要在一个页面中加载使用很多image组件,加载图片,采用的是[data:image..base64,...]格式的图片直接放在src里.但在真机测试时,可以导致wxml里内容太多,小程序直接无响应.所以想着把 从服务端传来的base64格式的图片转成本地文件路径后,再放到image组件的src里.

解决:

    在社区里查了好多帖子,发现都是提此类问题,但均没有结果.后来在网上找到了解决方法,现分享如下:


    var base64 = "data:image...";//base64格式图片

    var imgPath = wx.env.USER_DATA_PATH+'/页面名称'+'你的图片名'+ '.png';

    //如果图片字符串不含要清空的前缀,可以不执行下行代码.

    var imageData = base64.replace(/^data:image\/\w+;base64,/, "");

    

    var fs = wx.getFileSystemManager();


    fs.writeFileSync(imgPath, imageData, "base64");


 至此就可以用imgPath(图片的本地文件路径)进行后继大家想要的操作了!

 注意用完后,及时清理本地文件.释放储存空间.


最后:发现社区中已有此种解决方法了,之前没找到.

最后一次编辑于  2018-11-09
收藏

12 个评论

  • 老刘
    老刘
    2018-10-30

    你这写的是本地缓存文件,不叫临时文件吧

    2018-10-30
    赞同
    回复 1
    • 治辰科技于鲁宁
      治辰科技于鲁宁
      2018-10-30

      对,用词有误.应为[生成本地文件]

      2018-10-30
      回复
  • ᯤ²ᴳ何利斌
    ᯤ²ᴳ何利斌
    2018-10-28

     mark

    2018-10-28
    赞同
    回复

正在加载...

登录 后发表内容