位置: 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遍历)

  • 小米手表color2微信怎么显示(小米手表color2微信不提示)

    小米手表color2微信怎么显示(小米手表color2微信不提示)

  • 抖音直播开通需要费用吗(抖音直播开通需要多久)

    抖音直播开通需要费用吗(抖音直播开通需要多久)

  • 快手主页如何添加导航定位(快手主页如何添加地图导航)

    快手主页如何添加导航定位(快手主页如何添加地图导航)

  • 微信运动看不到好友步数以前的还能看到(微信运动看不到某个人的运动记录)

    微信运动看不到好友步数以前的还能看到(微信运动看不到某个人的运动记录)

  • qq怎么查看别人的收藏(qq怎么查看别人的实名认证信息)

    qq怎么查看别人的收藏(qq怎么查看别人的实名认证信息)

  • 抖音为什么下载不了呢(抖音为什么下载不了视频)

    抖音为什么下载不了呢(抖音为什么下载不了视频)

  • 网易云会员过期后下载的歌曲不能听(网易云会员过期了下载的音乐还能听吗)

    网易云会员过期后下载的歌曲不能听(网易云会员过期了下载的音乐还能听吗)

  • 计算机hook啥意思(计算机go是什么意思)

    计算机hook啥意思(计算机go是什么意思)

  • 苹果11怎么百分比显示(苹果怎么百分百退款成功的理由)

    苹果11怎么百分比显示(苹果怎么百分百退款成功的理由)

  • 用手机充电线给MacBook充电(用手机充电线给电脑充电)

    用手机充电线给MacBook充电(用手机充电线给电脑充电)

  • 耳机单元什么意思(耳机单元区别)

    耳机单元什么意思(耳机单元区别)

  • smart keyboard怎么用(smart keyboard怎么查序列号)

    smart keyboard怎么用(smart keyboard怎么查序列号)

  • 华为畅享9e可以设置指纹解锁吗(华为畅享9e可以玩光遇吗)

    华为畅享9e可以设置指纹解锁吗(华为畅享9e可以玩光遇吗)

  • 在outlook的服务器设置中POP3协议是指(在outlook的服务器设置中SMTP协议设置)

    在outlook的服务器设置中POP3协议是指(在outlook的服务器设置中SMTP协议设置)

  • 苹果c开头的什么货(苹果c开头什么意思)

    苹果c开头的什么货(苹果c开头什么意思)

  • 快手作品发布时间怎么关(快手作品发布时间)

    快手作品发布时间怎么关(快手作品发布时间)

  • 爱奇艺vip是什么意思(爱奇艺vip会员)

    爱奇艺vip是什么意思(爱奇艺vip会员)

  • 显卡vga接口坏的原因(vga线插显卡上没反应)

    显卡vga接口坏的原因(vga线插显卡上没反应)

  • 抖音极速版怎么拍抖音(抖音极速版怎么提现到微信)

    抖音极速版怎么拍抖音(抖音极速版怎么提现到微信)

  • 苹果xsmax自带无线耳机吗(苹果xs max有无线电功能吗)

    苹果xsmax自带无线耳机吗(苹果xs max有无线电功能吗)

  • 斗鱼tv怎么投影到电视(斗鱼tv投影仪下载)

    斗鱼tv怎么投影到电视(斗鱼tv投影仪下载)

  • faceu激萌漫画模式在哪(faceu激萌漫画效果)

    faceu激萌漫画模式在哪(faceu激萌漫画效果)

  • 一加手机6的RAM容量(一加6内存规格)

    一加手机6的RAM容量(一加6内存规格)

  • 华为gt手表能看到微信内容吗(华为gt手表能看电量吗)

    华为gt手表能看到微信内容吗(华为gt手表能看电量吗)

  • 苹果手机时间显示到桌面(苹果手机时间显示变淡了怎么调回来)

    苹果手机时间显示到桌面(苹果手机时间显示变淡了怎么调回来)

  • 手机像素怎么看(手机像素怎么看好坏)

    手机像素怎么看(手机像素怎么看好坏)

  • 苹果xr怎么查是不是国行(苹果xr怎么查是不是正品)

    苹果xr怎么查是不是国行(苹果xr怎么查是不是正品)

  • 税务师报名入口官网2022
  • 营业执照备案登记流程
  • 已付工资在资产负债表中体现
  • 税控盘如何看是否反写成功
  • 支付给外包公司的工资备注怎么写
  • 固定资产原值包含进项税吗
  • 生产成本月末结转到本年利润里吗
  • 应纳税所得额超过36000至144000
  • 增值税税率2019
  • 小企业准则汇兑损失计入什么科目
  • 年终奖社保怎么算
  • 免税农产品转出进项税税率
  • 营改增后利息收入交什么税
  • 部队属于企事业单位吗
  • 财税[2016]101
  • 发票认证勾选是一回事吗
  • 物流公司承担货物损失赔偿如何写会计分录
  • 商品期货交易会计核算
  • 个人社保费需要交多少年
  • 个税申报系统换一台电脑要怎么办
  • 个人技术投资入什么科目
  • 小规模季报资产总额填错了有影响吗
  • mac应用程序安装权限在哪找
  • bitlocker功能
  • win10打开游戏老是提示
  • apple mac 系统
  • 贷款减值准备和减值准备支出的区别
  • 固定资产不入账是谁的责任
  • 教育培训行业收入
  • php socket函数
  • 麦克米伦anki
  • 黄金的伴生石
  • 付工程改造余款分录
  • ai绘图素材
  • php支付功能
  • 未发货先开票后付款是否违法
  • 政府会计计提折旧会计分录2022
  • php函数的定义和调用
  • shapecfg命令 管制网络设备的流量
  • 企业所得税申报表在哪里打印
  • 劳务费发票是不是专票
  • 发票报送日志不完整
  • 发票勾选后什么时候开票
  • 制造费用的作用
  • 长期股权投资投资损益的确认
  • mysql修改表结构的关键字
  • 甲供材料怎么记账
  • 税务局核定税种流程
  • 不得扣除的税金啥意思
  • 商家的促销
  • 认缴资金 实缴资金
  • 公司转投资是什么意思
  • 影视公司临时演员怎么办
  • 新建厂房需要缴纳什么税
  • 支付宝支付高速通行费如何开发票
  • 业务招待费是销售
  • mysql无法配置
  • mysql5.7.
  • windows server 2016 自动登录
  • winxp使用到什么时候
  • bboy.exe进程是病毒吗 bboy进程安全吗
  • linux系统ln命令
  • xp电脑状态栏跑到左边了怎么设置回来
  • win7防火墙打不开错误代码6801
  • windows7开机后显示配置失败
  • linux管理员权限命令
  • windows7输入
  • linux配置静态
  • opengl安装教程
  • css兼容浏览器
  • 如何控制孩子的手机使用时间
  • JavaScript的removeChild()函数用法详解
  • javascript页面
  • python中scipy用法
  • js图片预览
  • 德勤 税务
  • 阿尔及利亚关税起征点查询
  • 郑州国税局投诉电话
  • 山西省税务
  • 深圳代理记账公司赚钱吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设