Javascript 中 自定义方法调用组件时需要在返回结果前等待

自定义的方法时需要判断本地是否有文件所以需要调用getFileInfo方法,然后进行文件处理

function getLocalIcon(name) {  let iconPath = "../images/category_ico/";  let tail = ".png";  var link = iconPath + name + tail;  var ret = '';
  wx.getFileInfo({    filePath: link,    success: function (data) {
      ret = link;
    },    fail: function (data) {
      ret = hosts + 'icon/' + name + tail;
    },    complete: function(){      console.log(ret);   //打印一
      return ret;
    }
  })  return ret;
}

调用方法

icon = parseInt(bean.icon) == 0 ? wxLink.getLocalIcon(bean.img_url) : wxLink.getImgLink(bean.img_url,'icon');console.log(icon)   //打印二

打印顺序为 打印二 打印一,
在方法getLocalIcon被调用时 执行了wx.getFielInfo方法 , 可是在执行wx.getFielInfo结果的同时返回了ret,想要请教论坛的各位大神,在调用wx.getFieldInfo时怎么设置等待让结果先暂停返回?


翻阅古今
浏览 786回答 1
1回答

哔哔one

放进去Promise 或者使用同步方法
打开App,查看更多内容
随时随地看视频慕课网APP