收藏
回答

wx.saveImageToPhotosAlbum保存到手机相册问题,保存之后,顺序不一样?

云数据库内有1.jpg-9.jpg 9张图片!

我将,第5张图片,在onload中换成一张广告图!然后通过wx.getImageInfo获取path,在通过wx.saveImageToPhotosAlbum,通过for循环的形式,保存到手机!

真机测试的时候,替换后的第五张图片,总是无法展示在正确的位置!请问这是为什么!?

如何做,能正确展示!

还有,wx.saveImageToPhotosAlbum 只能一次保存一张图片吗? 不能像wx.chooseImage一样,一次搞定9张吗?\

麻烦大神解答下,不胜感激

fenxiangEvent: function() {
    wx.showLoading({
      title: '下载中...',
    })


    for (var index = 0; index < 9; index++) {
      wx.getImageInfo({
        src: this.data.tupian[index],
        success(res) {
              wx.saveImageToPhotosAlbum({
                filePath: res.path,
                success(res) {
                  console.log(res)
                }
              })
            }
          })
        }
    wx.hideLoading()
}
尝试过图片压缩,依然没办法解决这个问题!  现在看的问题,应该是图片大小不一样,第5张替换后的图片,内容大一些,下载速度愿意,导致,在手机上展示的顺序出问题!
有没有什么方法,可以在上一张图片下载完成之后,再进行下一张图片的处理
最后一次编辑于  02-12
回答关注问题邀请回答
收藏

1 个回答

  • Admin²⁰²⁰
    Admin²⁰²⁰
    02-12

    await了解下

    另外你这代码里没有下载操作啊,有的是uploadFile操作,这个是上传文件
    
    02-12
    有用
    回复 8
    • AboutOnce
      AboutOnce
      02-12
      发错代码了
      02-12
      回复
    • AboutOnce
      AboutOnce
      02-12
      代码 已经重新贴上去了
      02-12
      回复
    • AboutOnce
      AboutOnce
      02-12
      unknown: Can not use keyword 'await' outside an async function!  await不能再这里使用 - -#  这个操作在页面js内执行的,并没有做成云函数!
      02-12
      回复
    • Admin²⁰²⁰
      Admin²⁰²⁰
      02-12回复AboutOnce
      去掉for ,然后在saveImageToPhotosAlbum的success里面递归调用保存方法,传入图片的index,这样能成功保存完一张图片后再继续保存下一张图片
      02-12
      1
      回复
    • AboutOnce
      AboutOnce
      02-12
      好的 ,谢谢
      02-12
      回复
    查看更多(3)
登录 后发表内容
问题标签