收藏
回答

getImageInfo获取值顺序?

wx.chooseMedia({
      count: 9,
      mediaType: ['image'],
      sourceType: ['album'],
      maxDuration: 30,
      camera: 'back',
      success(res) {
        var list = res.tempFiles
        for(var i=0 ; i<list.length; i++){
          wx.getImageInfo({
            src: list[i].tempFilePath,
            success: function(res){
              _this.data.imglist.push({
                path : res.path,
                width : res.width,
                height : res.height,
                size : res.width * res.height
              })
            }
          })
        }
        try{
          console.log(_this.data.imglist);
          wx.setStorageSync('key', _this.data.imglist)
        }catch{}
        wx.navigateTo({
          url: '/pages/pinjie/pinjie',
        })

      }

我获取本地图片,获取图片的路径、长、宽存入数组imglist,再将imglist数组存入缓存,再跳转值pinjie界面。

打印imglist数组和appdata都显示有值

但是缓存和下一界面的imglist数组没有值。

并且如果我再次输入的话,下一界面会有上一次输入的值,这是什么问题?

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

2 个回答

  • 拾忆
    拾忆
    2023-04-04

    JS异步问题。

    1.利用async/await解决

    2.for循环外提前声明数组,然后请求结果存入数组的对应索引位置

    2023-04-04
    有用 1
    回复
  • 那一抹笑😃 穿透阳光
    那一抹笑😃 穿透阳光
    2023-04-05

    异步转同步 async/await

    2023-04-05
    有用
    回复
登录 后发表内容