老师,问一个问题

老师,问一个问题

为什么这里的post请求变成异步的了,视频上不加async和await也可以正常执行,但是我这边去掉后就提示请求失败了


https://img1.sycdn.imooc.com//climg/629eaff8094b49a112040768.jpg


https://img1.sycdn.imooc.com//climg/629eafdd097a2cb108790514.jpg

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,这里的处理确实是一个异步操作,如果是同步操作会出现问题的,在工作中如登录时使用同步请求如果遇到一些问题,那么页面就会卡死,并且如有其它逻辑程序会等待同步完成后再往下执行。另课程中老师使用的axios.then的写法实际上就是promise,因为axios就是promise。那么就不需要在使用async和await了。

https://img1.sycdn.imooc.com//climg/629eb75f098489ff07930427.jpg

祝学习愉快!

  • 洛克磊 提问者 #1

    老师,如果去掉async和await,是不是第1步执行完后,还没来得及收到post封装返回的结果,就开始执行第2步了,因此result是undefined。加了async和await后,执行第1步的过程中,会先等待post函数,然后再执行第2步

    https://img1.sycdn.imooc.com//climg/629ebec1097e800209020407.jpg

    2022-06-07 11:01:19
  • 好帮手慕小李 回复 提问者 洛克磊 #2

    同学你好,理解的是对的。这里得不到数据也就是说result.errno的值拿不到所以就不会进入到if的逻辑中去,所以会出现问题。祝学习愉快!

    2022-06-07 16:21:30
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师