当前位置: 首页 > news >正文

微商城网站建设最新舆情信息网

微商城网站建设,最新舆情信息网,网站建设项目招标书,wordpress集成文库插件遇到的问题 在目前一个需求中,我需要等待axios请求完成后,判断请求是否出现异常,然后来判断是否关闭弹窗 修改后大概代码如下: async submitForm() {let flag false//表单验证,默认通过let formValidation truethis…

遇到的问题

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

修改后大概代码如下:

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

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

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

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

image-20230130232259421

这个问题解决后,又出现了一个新的问题,就是我在这里不是返回了一个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 = falseconsole.log("重新查询")this.getIllegalInfoList()this.$refs.insertIllegalInfoDialog.resetForm();}})},

总结

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

http://www.hrbkazy.com/news/25020.html

相关文章:

  • 浙江住房城乡与建设委员会网站查全球疫情最新数据消息
  • 网站忘记密码功能黄冈网站推广策略
  • 手机网站建站流程最新中国新闻
  • 找别人做网站怎么防止后门淘宝关键词排名是怎么做的
  • 网站建设需求分析模板关键词在线采集
  • 什么网站做英语翻译练习财经新闻最新消息
  • 南昌哪家网站开发公司好网站seo百度百科
  • 2021年天津教师招聘信息重庆公司seo
  • 苏州吴江做网站互联网推广软件
  • 自学做动态网站百度搜索广告收费标准
  • 江门做网站费用seo服务是什么意思
  • 建设厅特种作业操作证seo专员是干嘛的
  • 爱的网站歌曲北京seo推广优化
  • 桂市做网站的朋友竞价推广和seo的区别
  • 如何建设网站论坛网页设计教程
  • 自己如何建立一个网站天津搜索引擎推广
  • 怎么学平面设计啊东莞seo外包
  • 做网站需要交税收录平台
  • 聊城做网站推广哪家好广告投放方式
  • 棋牌网站哪里做沧州做网络推广的平台
  • 深圳龙岗网站建设哪家好公司3322免费域名注册
  • 赣州新闻媒体求助热线东莞网络优化公司
  • 自己做个公司网站站长工具seo下载
  • 专业网站制作公司排行网站排名优化软件有哪些
  • 做网站 点击跳转怎么建公司网站
  • 云主机 多 网站网络广告策划书案例
  • 番禺建设网站公司排名广州疫情最新消息
  • 网站视频背景怎么做在线数据分析工具
  • 网易企业邮箱入口登录厦门seo管理
  • 曰本真人做爰免费网站网站收录平台