在小程序中可以直接使用promise,我们需要做的就是在A函数中返回一个promise,在返回的promise中再进行获取数据的操作,把成功获取到的数据传入resolve中,把失败的结果传入reject,然后在B函数中调用A函数,调用后再使用.then 和 .catch 分别对成功和失败的结果进行处理
data: { brandimg: '' // 设置一个空变量,在请求数据后将请求结果赋值给该变量 }, getImgUrl() { return new Promise((resolve, reject) => { wx.request({ url: 'http://daxun.kuboy.top/api/pro', success: res => { this.setData({ brandimg: res.data.data[0].brandimg // 将获取到的数据赋值给data中的变量 }) resolve(res) console.log("A方法请求到的数据", this.data.brandimg) // 在此将赋值的结果输出 }, fail: res => { reject(res) } }) }) }, useImage() { this.getImgUrl().then(res => { console.log("B方法中得到的数据",res) }).catch(res =>{ console.log(res) }) }, onLoad: function () { this.useImage() },