微信小程序 请求 更换 ES6 promies

普通的request 容易回调地域,我们更换为 promise :

 

创建一个request 文件夹,然后在里面写一个js 文件:

/**导出一个request  ,这个Request 是个 函数。*/
export const request = (params) => {
  //返回一个Promies
  return new Promise((resolve, rejects) => {
    //Promies 中调用wx.request
    wx.request({
      ...params,  //展开参数ES6语法
      success(res) {  //成功
        resolve(res);
      },
      fail(err) {   //失败
        resolve(err)
      }
    })
  })
}

 

然后直接引入使用即可:

//引入Promies 来实现请求
import {
  request
} from "../request/index"


Page({

  /**
   * 页面的初始数据
   */
  data: {
    swiper: []
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

    // 原始请求 获取轮播图:
    // wx.request({
    //   url: 'https://api-hmugo-web.itheima.net/api/public/v1/home/swiperdata',
    //   success:(res)=>{
    //     this.setData({
    //       swiper:res.data.message
    //     })
    //   },
    // })

    request({
      url: 'https://api-hmugo-web.itheima.net/api/public/v1/home/swiperdata'
    }).then(res => {
      this.setData({
        swiper: res.data.message
      })
    })
  },

})

 

 

然后data中的 swiper  拿到的就是 轮播图的数据了,

直接在外层的swiper循环即可:

 

posted @ 2021-09-20 13:42  咸瑜  阅读(106)  评论(0编辑  收藏  举报