async change(id,num){
let res=await pAjax({
url:"./api/updataCar.php",
data:{
goods_id:id,
goods_num:num,
username:this.user
}
})
//pAjax()是一个返回值为promise对象的ajax请求
// 但此时用了await关键字 等待 所以res的值不是promise对象,而是pAjax()返回的promise对象 由peddling状态 变为执行成果或失败 的值
//可以简单理解为 await promise 对象后 res的值为 promise对象resolve()传递的值
//console.log(res);
res=JSON.parse(res)
if(res.code){
this.data.forEach(items => {
return items.goods_num=(items.goods_id==id)?num:items.goods_num
});
}
localStorage.setItem("data",JSON.stringify(this.data))
this.render()
})
async change(id,num){
let res= pAjax({
url:"./api/updataCar.php",
data:{
goods_id:id,
goods_num:num,
username:this.user,
times:new Date().getTime()
}
})
console.log(res);
//此事输出的res 是一个promise对象 状态为pedding 执行中
res.then(val=>{
console.log(val);
// console.log(res);
val=JSON.parse(val)
if(val.code){
this.data.forEach(items => {
return items.goods_num=(items.goods_id==id)?num:items.goods_num
});
}
localStorage.setItem("data",JSON.stringify(this.data))
this.render()
})
async await 和promise then 实现异步代码同步执行的 一些区别和注意事项
原文:https://www.cnblogs.com/junjie99/p/14603801.html