HarmonyOS Promise 重复执行,不执行
用变量保存下一个 promise,不进行第二次new,
点按钮去执行 pp.then() 或 await pp;
结果promise执行体只执行了一次;
下方是,我的试例代码,log只打印一次,更复杂的情形一样;
pp: Promise<void> = this.ttest();
ttest(): Promise<void> {
return new Promise(async (resolve: Function, reject: Function) => {
console.log(`title ${util.generateRandomUUID(false)}`);
});
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS handleTakePicture不执行
71浏览 • 1回复 待解决
HarmonyOS list嵌套list,scrollToItemInGroup不执行
111浏览 • 1回复 待解决
HarmonyOS Scroll嵌套list,scrollToItemInGroup不执行
908浏览 • 1回复 待解决
页面aboutToAppear方法执行时,执行Promise任务查询请求服务器,如果耗时过长,里面的内容还会执行吗
2028浏览 • 1回复 待解决
HarmonyOS zlib.compressFile不执行回调
126浏览 • 1回复 待解决
怎么执行调用方传入的Promise或AsyncCallback回调
837浏览 • 1回复 待解决
HarmonyOS Tabs 切换,页面不执行 showPage() 方法
563浏览 • 1回复 待解决
HarmonyOS @Entry标注的组件onPageShow方法不执行
121浏览 • 1回复 待解决
HarmonyOS view的onPageShow不执行,这是怎么回事?
104浏览 • 1回复 待解决
HarmonyOS 全屏页面返回Flutter透明弹窗(dialog)时重复执行弹窗进入动画
88浏览 • 1回复 待解决
http执行requestInStream下载文件时,dataReceiveProgress会出现大量重复的回调
445浏览 • 1回复 待解决
HarmonyOS emitter.off 不执行会不会有问题
492浏览 • 1回复 待解决
HarmonyOS Web的高度为0时,onLoadIntercept方法不执行
110浏览 • 1回复 待解决
HarmonyOS 在worker子线程使用promise方法时,有什么办法等待promise返回后再继续执行后面的代码吗?
133浏览 • 1回复 待解决
HarmonyOS hvigor 自定义脚本中发现hvigor.nodesInitialized 不执行
96浏览 • 1回复 待解决
taskpool 执行的 async 函数和普通返回 promise 函数的一些差异问题
2186浏览 • 1回复 待解决
HarmonyOS taskpool执行task后后续代码没有执行
318浏览 • 0回复 待解决
HarmonyOS mtu设置之后执行发现服务方法返回服务列表为空,不设置mtu执行发现服务方法返回列表正常
37浏览 • 1回复 待解决
HarmonyOS 使用taskpool执行task后,返回的结果没有通过Promise返回主线程,有什么定位方法吗?
154浏览 • 1回复 待解决
“netAvailable”执行的时候“netConnectionPropertiesChange”一定会执行吗
1841浏览 • 1回复 待解决
taskpool任务执行结束后如何执行回调方法
2243浏览 • 1回复 待解决
WebView下沉C++,执行runJavaScript后页面不刷新,疑似有报错
1991浏览 • 1回复 待解决
HarmonyOS onBackPress执行异常问题
676浏览 • 1回复 待解决
HarmonyOS onBackPress执行异常问题 ?
61浏览 • 0回复 待解决
HarmonyOS 添加日程时,日程重复规则字段recurrenceRule不生效
72浏览 • 1回复 待解决
在提供的代码中,pp 变量被赋值为 this.ttest() 的返回值,也就是一个 Promise 对象。由于 Promise 一旦解决(resolved)或拒绝(rejected)后就不会再次改变其状态,所以无论多少次调用 pp.then() 或者 await pp,Promise 的执行体(executor function)都只会执行一次。如果希望每次点击按钮时都执行 ttest 函数中的代码,不应该在 ttest 函数中返回一个新的 Promise,而是应该每次点击按钮时都调用 ttest 函数,并获取一个新的 Promise 对象。