当前位置: 首页 > Web前端 > vue.js

vue+ES6asyncandawait

时间:2023-03-31 22:50:08 vue.js

作用:async和await用于处理异步。需要像同步一样异步执行,需要异步返回结果后,再根据结果继续执行。await的功能必须放在async函数中,就是等待Promise的resolution出现。此过程被阻止。async用于声明一个函数是异步的,await用于等待一个异步方法执行完成。有了await,就不用then来接受异步操作的返回值了,而是直接给变量赋值,赋值就是resolve给的值。addtheinterfaceaxiosexamplecreated(){this.init()},methods:{//得到方法1和方法2的两个结果后,执行init方法asyncinit(){try{letoneRes=awaitthis.查询一个();让twoRes=awaitthis.queryTwo();让res=oneRes+twoRes;控制台日志(资源);}赶上(错误){console.log(错误);}},//方法一queryOne(){constparams={name:xxx}returnnewPromise((resolve,reject)=>{axios.post('/XXXX',{params}).then((res)=>{if(data.rs===1){resolve(data)}}).catch((err)=>{reject(err)})})},//方法2queryTwo(){constparams={name:xxx}returnnewPromise((resolve,reject)=>{axios.post('/XXXX',{params}).then((data)=>{if(data.rs===1){解决(数据)}}).catch((err)=>{reject(err)})})},},