码迷,mamicode.com
首页 > 其他好文 > 详细

Promise对象和回调函数,解决异步数据传递问题

时间:2017-09-16 13:38:56      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:log   promise   参数   程序   llb   col   函数   异步操作   sea   

下面的代码例子,均已小程序的异步请求数据为案例来说明

1.利用回调函数,来解决异步数据传递问题

 1 异步操作api.js
 2 const getBooks = (url, callback) => {
 3   wx.request({
 4     url: url,
 5     method: ‘GET‘,
 6     header: {
 7        "Content-Type": "json"
 8     },
 9     success: function (res) {
10        console.log(res)
11        callback(res)
12     }
13   })
14 }
15 module.exports = {
16      getBooks: getBooks
17 }
18 
19 引入api.js
20 
21 api.getBooks(‘参数‘,回调函数)
22 
23 写法一:
24 api.getBooks(‘https://api.douban.com/v2/movie/search?tag=%E5%96%9C%E5%89%A7&count=4‘, res => {
25      console.log(res)
26 })
27 
28 写法二:
29 
30 let x = () => {console.log(res)}
31 api.getBooks(‘参数‘, x)

2.利用Promise来解决异步回调数据传递的问题

异步操作api.js
const getBooks = (url) => {
  return new Promise((resolve,reject) => {
    wx.request({
      url: url,
      method: ‘GET‘,
      header: {
         "Content-Type": "json"
      },
      success: function (res) {
         resolve(res)
      }
    })
  })
}
module.exports = {
     getBooks: getBooks
}

引入api.js

api.getBooks(‘https://api.douban.com/v2/movie/search?tag=%E5%96%9C%E5%89%A7&count=4‘).then(res => {
     console.log(res)
})

以上两种方法均可以解决异步操作中数据传递的问题,也是比较简单,比较实用的两种方法

Promise对象和回调函数,解决异步数据传递问题

标签:log   promise   参数   程序   llb   col   函数   异步操作   sea   

原文地址:http://www.cnblogs.com/songdongdong/p/7530852.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!