位置: IT常识 - 正文

解决axios异步请求问题(异步变为同步)(axios异步请求数据)

编辑:rootadmin
解决axios异步请求问题(异步变为同步) 遇到的问题

推荐整理分享解决axios异步请求问题(异步变为同步)(axios异步请求数据),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:async异步请求,axios处理异常,异步处理失败提示,async await异步请求,async异步请求,axios处理异常,async await异步请求,axios处理异常,内容如对您有帮助,希望把文章链接给更多的朋友!

在目前一个需求中,我需要等待axios请求完成后,判断请求是否出现异常,然后来判断是否关闭弹窗

修改后大概代码如下:

async submitForm() { let flag = false //表单验证,默认通过 let formValidation = true this.$refs['vForm'].validate(valid => { if (!valid){ formValidation = false } //TODO: 提交表单 }) if (formValidation === true){ //这里需要使用await,否则不会等待该方法运行完成 await insertIllegalInfo(this.formData).then(res=>{ this.$message.success("新增成功") flag = true console.log("新增成功了") console.log(flag) }) } console.log("提交马上返回了") console.log(flag) return flag},

原来在方法中没有使用async和await,由于发送的axios请求是异步请求,所以在请求还没完成的时候submitForm这个方法就已经将flag返回了

这就导致了一个问题,如果我在后端在处理请求的时候出现异常,我在这里无法进行处理

经过百度搜索,发现使用async+await能够解决该问题,将异步方法改为同步方法,在方法前面加上async进行修饰,然后在axios请求前使用await进行修饰即可,这样就不会出现异步的问题

解决axios异步请求问题(异步变为同步)(axios异步请求数据)

这个问题解决后,又出现了一个新的问题,就是我在这里不是返回了一个flag吗,我在另外一个vue页面中需要获取到return返回的这个flag,但是按照正常步骤获取不到

后来经过查询资料后发现了原因,如下:

async 是一个修饰符,async 定义的函数会默认的返回一个Promise对象resolve的值,因此对async函数可以直接进行then操作,返回的值即为then方法的传入函数。

await 也是一个修饰符,await 关键字 只能放在 async 函数内部, await关键字的作用 就是获取 Promise中返回的内容, 获取的是Promise函数中resolve或者reject的值。

async/await 是一种编写异步代码的新方法。之前异步代码的方案是回调和 promise。

async/await 是建立在 promise 的基础上。(如果对Promise不熟悉,我已经着手在写Promise的文章了)

async/await 像 promise 一样,也是非阻塞的。

async/await 让异步代码看起来、表现起来更像同步代码。这正是其威力所在。

主要原因就是async 定义的函数会默认的返回一个Promise对象resolve的值,所以我们需要使用then去进行取值,如下

submitInsertIllegalInfoDialog(){ //重要的是这里,这里调用了上面说的的submitForm方法 this.$refs.insertIllegalInfoDialog.submitForm().then(flag=>{ console.log(flag) if (flag === true){ console.log("马上关闭弹窗了") //这个是来关闭弹窗的 this.insertIllegalInfoDialogVisible = false console.log("重新查询") this.getIllegalInfoList() this.$refs.insertIllegalInfoDialog.resetForm(); } })},总结

学会async和await的使用能够让我在开发vue项目的时候更加灵活,之后在遇到axios异步请求冲突的时候可以参考本篇文章进行解决

本文链接地址:https://www.jiuchutong.com/zhishi/284043.html 转载请保留说明!

上一篇:克卢恩国家公园保护区的山脉和冰川,加拿大育空地区 (© Design Pics Inc/Alamy)(加拿大克卢恩国家公园)

下一篇:js遍历map(js遍历map对象)(js map foreach遍历)

  • 小米10s可以用电信移动卡(小米1s电信版能用移动卡吗)(小米10s可以用电信卡吗)

    小米10s可以用电信移动卡(小米1s电信版能用移动卡吗)(小米10s可以用电信卡吗)

  • word2019艺术字水平对齐方式相对于栏居中怎么设置(word2021艺术字)

    word2019艺术字水平对齐方式相对于栏居中怎么设置(word2021艺术字)

  • 没有连接wifi怎么登录路由器(没有连接wifi怎么查看ip地址)

    没有连接wifi怎么登录路由器(没有连接wifi怎么查看ip地址)

  • oppoa8充电快吗(oppoa8充电慢是怎么回事)

    oppoa8充电快吗(oppoa8充电慢是怎么回事)

  • 华为手机莫名出现声音(华为手机莫名出现铃声)

    华为手机莫名出现声音(华为手机莫名出现铃声)

  • 网络断了连不上网是什么原因(网络断了连不上网怎么办)

    网络断了连不上网是什么原因(网络断了连不上网怎么办)

  • 三星980相当于骁龙多少(三星980相当于骁龙的哪个型号)

    三星980相当于骁龙多少(三星980相当于骁龙的哪个型号)

  • 快手的聊天记录删了能查到吗(快手的聊天记录可以恢复吗)

    快手的聊天记录删了能查到吗(快手的聊天记录可以恢复吗)

  • 苹果7p怎么没有电池健康啊(苹果7p怎么没有设备管理)

    苹果7p怎么没有电池健康啊(苹果7p怎么没有设备管理)

  • 短信没声音在哪里设置(手机短信没有声音提示了怎么回事)

    短信没声音在哪里设置(手机短信没有声音提示了怎么回事)

  • 表格中数字显示是E+数字 怎么正常显示(表格中数字显示乱码)

    表格中数字显示是E+数字 怎么正常显示(表格中数字显示乱码)

  • 苹果xr网速不好怎么解决(iphonexr网速慢)

    苹果xr网速不好怎么解决(iphonexr网速慢)

  • 快手消息怎么恢复(快手的消息)

    快手消息怎么恢复(快手的消息)

  • photoshop是应用软件吗(ps属于应用软件吗)

    photoshop是应用软件吗(ps属于应用软件吗)

  • 华为手表gt2可以接电话吗(华为手表gt2可以下载微信吗)

    华为手表gt2可以接电话吗(华为手表gt2可以下载微信吗)

  • ps中魔法棒工具在哪里(ps魔法棒工具快捷键)

    ps中魔法棒工具在哪里(ps魔法棒工具快捷键)

  • ipad发票没了还能保修吗(ipad发票丢了可以补开吗)

    ipad发票没了还能保修吗(ipad发票丢了可以补开吗)

  • 怎么找回删除的聊天记录(怎么找回删除的照片)

    怎么找回删除的聊天记录(怎么找回删除的照片)

  • 5g属于华为吗(5g网络属于华为吗)

    5g属于华为吗(5g网络属于华为吗)

  • 身份证可以放在手机后面吗(身份证可以放在苹果手机后面吗)

    身份证可以放在手机后面吗(身份证可以放在苹果手机后面吗)

  • 微信听全民k歌算访客吗(微信听全民k歌他知道吗)

    微信听全民k歌算访客吗(微信听全民k歌他知道吗)

  • 小米6如何root(小米6如何root权限)

    小米6如何root(小米6如何root权限)

  • web前端三大主流框架(web前端三大主流框架vue)

    web前端三大主流框架(web前端三大主流框架vue)

  • 资源税征收原则
  • 员工提成比例怎么分配
  • 增值税勾选统计后怎么申报
  • 进口关税增值税税率
  • 有限责任公司需要几个股东
  • 网银制单了没有审核有影响吗
  • 公司之间往来款需要开收据吗
  • 政府补助需要交哪些税
  • 软件测试费计入什么科目
  • 团建费用会计科目
  • 中小企业怎么避税
  • 复印的原始凭证可以作为记账依据吗
  • 餐饮无票收入怎么做账
  • 实收资本需要计提印花税吗
  • 收到高新企业补助款分录
  • 贷款损失准备对不良贷款的比率称作
  • 进项税额转出是不可以抵扣吗
  • 盘盈固定资产冲销啥科目
  • 地税局返的个人所得税手续费多久返还?
  • 建筑安装税务分类编码为多少?
  • 企业的福利费如何使用
  • 关于设备安装调试的说法
  • 三联专用发票每一联分别给谁
  • 营改增对运输业的影响
  • 对整个产品的零件退回的财务会计处理?
  • 劳务外包收入公式是什么
  • 如何理解结转利润的意思
  • 现金比率计算公式含义
  • 现金日记账的收为什么不根据银行和现金相互划转
  • 合并报表六大抵消分录通俗理解
  • smss.exe是干嘛的
  • 企业清算有哪些类型
  • 如何在局域网内发布网页
  • 发生额怎么算
  • 职称评审费计入什么科目
  • pnp.npn
  • php null false
  • 年度汇算清缴怎么查询
  • 前端css要掌握到什么程度
  • php 堆排序
  • php怎么设置管理员权限
  • 税控技术服务费280元怎么抵减申报不成功
  • 企业所得税汇算清缴操作流程
  • 工会经费计提的比例
  • 企业出口证明
  • 往期企业所得税报表更正
  • 公司油票发票信息怎么查
  • 折旧率多少正常
  • 关于材料采购的通知
  • 没进项发票开销项发票是可以吗?
  • mysql的主从
  • 待报解预算收入是什么
  • 飞机票抵扣进项税怎么填附表二
  • 什么叫做有限循环小数
  • 固定资产是指的什么
  • 退货占销售比
  • 广告费应归于什么费用
  • 简易办法征收增值税有几种情况
  • 公司购买商品房能折旧吗
  • 债权投资的交易费用计入成本还是利息调整
  • 工资计提多了冲账怎么办
  • 外币存款利息是不是外币
  • 计提利息为什么贷方是应付利息
  • 汽车折旧计算方法2023折旧率
  • win2000系统禁止ping
  • 苹果15手机价格和图片颜色
  • mac系统操作的小技巧
  • centos直接安装
  • linux lv扩容
  • 进程中svchost
  • jquery常见的选择器
  • android使用so
  • unity怎么删除导入的包
  • 盗梦英雄限时占卜顺序
  • django使用celery
  • python27文件夹
  • 静海去天津的公交
  • 北京12366纳税服务平台
  • 医院盖章去哪个部门
  • 科技公司小规模纳税人
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设