一:promise方式
all([promise实例化对象1,promise实例化对象2]将方法一起渲染出来,
race([promise实例化对象1,promise实例化对象2]) 同时调用多个接口,谁的接口出现的数据快就用谁的
二:wxs文件过滤内容:
三:# async...await
async用于申明function异步,await用于等待一个异步方法执行完成
1、async函数返回一个 Promise 对象 首先把 getFaceResult 转化成一个async 函数,就是在其前面加async, 因为它的调用方法和普通函数的调用方法是一致,所以没有什么问题。然后就把 getLocation 和getFaceList 放到await 后面
如果请求发生异常,怎么处理? 它用的是try/catch 来捕获异常,把await 放到 try 中进行执行,如有异常,就使用catch 进行处理。
async getFaceResult () {
try {
let location = await this.getLocation(this.phoneNum);
if (location.data.success) {
let province = location.data.obj.province;
let city = location.data.obj.city;
let result = await this.getFaceList(province, city);
if (result.data.success) {
this.faceList = result.data.obj;
}
}
} catch(err) {
console.log(err);
}
}
四:捕获错误语法
当获取成功是走try里面的函数体 错误时候走catch
try{}catch{}
五:es6解构两种方式
// 解构赋值 把老数组的和新数组解构 并组合成一个完整的新数组 /* goodsList:[...this.data.goodsList,...data] */ goodsList:this.data.goodsList.concat(data),