es6的一些语法2(day2)

138 阅读2分钟

本文已参与「新人创作礼」活动.一起开启掘金创作之路。

回调函数

  • 简单介绍以下什么是回调函数,回调函数就是回调callback是指在另一个函数执行完成之后被调用的函数。success和fail都是在微信小程序api函数执行完成之后才会被调用,而success和fail本身就是函数,也可以返回数据。简单来说,回调函数本身就是函数,但是他们却被其他函数调用,而这些调用函数的函数被称为高阶函数。

image.png

  • 在我们开发微信小程序的时候,我们会发现大多数api都有成功或者失败的回调函数,success,fail,complete等等。success为接口调用成功的回调函数,fail为接口调用失败的回调函数,complete为接口调用结束的回调函数,他不管调用失败还是调用成功都会执行。因为这些api大多数都是异步api,异步api的执行结果需要通过object类型的参数中传入的对应回调函数获取。

  • 比如说用户下拉刷新的时间延迟函数api,这里成功后我们可以弹出消息框,提示用户刷新成功,这里就用到了success回调函数,成功后就弹出消息框,具体的代码如下:

onPullDownRefresh: function () {
    this.setData({
      releaseData:[],
    })
    this.getReleaseData()
   setTimeout(()=>{
     wx.stopPullDownRefresh({
       success: (res) => {
         wx.showToast({
           title: '刷新成功',
         })
       },
     })
   },500)
  },

当然我们也可以使用fail和complete来获取失败传过来的数据和完成后不管失败还是成功传过来的数据。具体代码如下:

fail(err){
    console.log(err)
},
 
 complete(msg){
     console.log(msg)
 },
 

这样我们就可以获取调用失败后的结果了,上述代码还可以使用箭头函数简化下代码。

回调函数大致就这样的,后续更新