第一种情况
let {completeProjects,volunteerProjects} = await this.getActivityList(obj)
console.log(completeProjects,volunteerProjects,'completeProjects,volunteerProjects');
let {completeProjects,volunteerProjects} = this.getActivityList(obj)
console.log(completeProjects,volunteerProjects,'completeProjects,volunteerProjects');
async getActivityList(obj){
const res =await request({
url: '/applet/org/activity/selectVolunteerActivityList',
method: 'post',
data: {
...obj
}
})
console.log("已进入前",res)
if(res.data.code==200){
console.log("已进入")
// 保存完整的活动数据,包括积分信息
const completeProjects = res.data.rows;
// 格式化picker需要的数据
let volunteerProjects = res.data.rows.map(item=>{
return {text:item.activityName,value:item.id,activityEndTime:item.activityEndTime}
})
// 过滤掉结束时间已超过24小时的活动
volunteerProjects = volunteerProjects.filter(item => this.isAfter24Hours(item.activityEndTime));
console.log(volunteerProjects,'内部数据')
return {completeProjects,volunteerProjects}
}
},
结论:await起到同步的效果,虽然接口的底层依旧是异步,但是加了await可以有效避免回调地狱
