【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();
相关推荐
霍珵蕴3 分钟前
Kotlin语言的软件工程
开发语言·后端·golang
nlog3n5 分钟前
Java观察者模式详解
java·开发语言·观察者模式
Kx…………6 分钟前
Uni-app入门到精通:uni-app的基础组件
前端·css·学习·uni-app·html
Hoxy.R8 分钟前
什么是 CSSD?
服务器·开发语言·oracle
巴巴博一9 分钟前
keep-alive缓存
前端·javascript·vue.js·缓存·typescript
Tipriest_17 分钟前
【前端扫盲】postman介绍及使用
前端·测试工具·postman
无名之逆22 分钟前
Hyperlane:高性能 Rust HTTP 服务器框架评测
服务器·开发语言·windows·后端·http·rust
跨境卫士-小汪35 分钟前
关税核爆72小时!跨境矩阵防御战紧急打响
开发语言·php
褚翾澜40 分钟前
Bash语言的社区交流
开发语言·后端·golang
wuaro40 分钟前
JS的深浅拷贝
前端·javascript·html