文档开发者中心
我的

在鸿蒙studio中执行JS代码,使用async/await方法,await后的程序未执行

使用async/await方法,当代码执行到 var txt1 = await this.sleep();

进行await后,后面的代码没有被执行,log只输出   [Console   DEBUG]  app Log: step1 : false

请问版主是async/await的方法使用错了吗?

我的需求是将异步接口转成同步使用。

收起
自动换行
深色代码主题
复制

run() { this.start(); } async start() { var txt1 = await this.sleep(); //进行await后,后面的代码不执行 var txt2 = this.getText(); console.log(txt1 === txt2); } sleep() { return new Promise(function(resolve, reject){ setTimeout(function(res){ if(res) { console.log('step1 : true'); reject (new Error('err')); } else { console.log('step1 : false'); resolve(false); } },0); }); } getText() { console.log('step2 : getText'); }
点赞
收藏
1
回复
9
分享
举报
浏览1122 发布于2021-07-08 09:18未知归属地
全部评论
最多点赞
最新发布
最早发布
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要发帖子

了解社区公约,与您携手共创和谐专业的开发者社区。