在小程序中可以直接使用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()
- },