【Promise】某个异步方法执行结束后 在执行下面方法

使用Promise ,当 layer.msg('查询成功') 这个方法执行结束后 ,下面代码才会执行

javascript 复制代码
let thas = this
async function showMessage() {
    await new Promise(resolve => layer.msg('查询成功', resolve));
    // 这里的代码将在 layer.msg 执行结束后执行
    thas.isGuarantee = true;
    thas.InsurancePolicyInfo = res.data;
    thas.ifTimeClose();
}
showMessage();

注意事项:Promise内如果使用 this , this无法访问到Vue实例 ;
解决方法:
1.你需要在外部定义全局变量 值是this, 在promise内使用这个变量

2.直接调用Vue组件实例
描述:箭头函数不会改变 this 的指向,它会捕获外部上下文的 this。因此,在箭头函数内部,this 会指向 Vue 组件的实例

javascript 复制代码
async showMessage() {
  await new Promise(resolve => layer.msg('查询成功', resolve));
  this.isGuarantee = true;
  this.InsurancePolicyInfo = res.data;
  this.ifTimeClose();
}

// 在 Vue 组件中调用 showMessage
this.showMessage();
相关推荐
清灵xmf2 分钟前
揭开 Vue 3 中大量使用 ref 的隐藏危机
前端·javascript·vue.js·ref
ljp_nan6 分钟前
QT --- 初识QT
开发语言·qt
su1ka1118 分钟前
re题(35)BUUCTF-[FlareOn4]IgniteMe
前端
测试界柠檬9 分钟前
面试真题 | web自动化关闭浏览器,quit()和close()的区别
前端·自动化测试·软件测试·功能测试·程序人生·面试·自动化
多多*10 分钟前
OJ在线评测系统 登录页面开发 前端后端联调实现全栈开发
linux·服务器·前端·ubuntu·docker·前端框架
2301_8010741510 分钟前
TypeScript异常处理
前端·javascript·typescript
ᅠᅠᅠ@11 分钟前
异常枚举;
开发语言·javascript·ecmascript
小阿飞_12 分钟前
报错合计-1
前端
caperxi13 分钟前
前端开发中的防抖与节流
前端·javascript·html
霸气小男13 分钟前
react + antDesign封装图片预览组件(支持多张图片)
前端·react.js