欢迎加入laravel技术交流群 :784030154
微信小程序为了提高用户的体验,请求皆为异步请求。但是在某些场景下,前面的请求回来的数据,有可能作为后面请求的基础,或者请求提交的数据内容,就会出现衔接不上问题。例如获取用户的信息的API:wx.getUserInfo(),就必须在登录状态下,即先要调用wx.login()接口,先登录,后获取用户信息,那么一般的处理的方法是:将wx.getUserInfo()放在wx.login()的success回调函数里面,问题是可以解决,但是函数的嵌套导致,代码整洁性问题,也降低了可读性。
那么问题就来了,怎么解决呢?
1.使用promist对象:ES6就为 我们提供了解决问题的办法:Promise对象!!!(详见大牛的教程 :http//es6.ruanyifeng.com/#docs/promise)
2.使用箭头函数
function fun1(id,callback){
callback && callback(id);
}
fun1(id,(callbak)=>{
console.log(id);
})