HarmonyOS promise调用如何进行串行调用

需要在第一条消息发送完成,并且收到Promise回调之后,再发送第二条消息,以此类推。请问调用方法如何进行改造?

以下的方法如何调用图片的方法。

let promise1 = sendFire(isoDep,"111").then((res=>{
  console.log("返回结果1",res)
}))
let promise2 =sendFire(isoDep,"222").then((res=>{
  console.log("返回结果2",res)
}))
let promise3 = sendFire(isoDep,"333").then((res=>{
  console.log("返回结果3",res)
}))
HarmonyOS
2024-12-27 14:17:40
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

根据描述场景,可以通过await和Promise配合,实现同步形式完成异步调用。可以参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/async-concurrency-overview-V5#asyncawait

样例代码如下:

function sendFire(tag: string) {
  const MyPromise: Promise<string> = new Promise((onFulfilled: Function, onRejected: Function) => {
    setTimeout(() => {
      let random = Math.random()
      if (random > 0.5) {
        onFulfilled(tag + "success")
      } else {
        onRejected(tag + "failed")
      }
    }, 3000)
  })
  return MyPromise
}
async function sendAllFire() {
  try {
    let res1 = await sendFire("tag1")
    let res2 = await sendFire("tag2")
    let res3 = await sendFire("tag3")
    console.log("")
  } catch (err) {
    console.error(err)
  }
}
分享
微博
QQ
微信
回复
2024-12-27 16:54:21
相关问题
使用Promise实现一种串行调用方式
1521浏览 • 1回复 待解决
HarmonyOS promise的链式调用如何使用
691浏览 • 1回复 待解决
HarmonyOS 如何进行sdk升级
375浏览 • 1回复 待解决
HarmonyOS 如何进行邀请测试
456浏览 • 1回复 待解决
HarmonyOS 如何进行代码检查
488浏览 • 1回复 待解决
HarmonyOS 请问如何进行UrlEncode
410浏览 • 1回复 待解决
HarmonyOS 如何进行图片裁剪
355浏览 • 1回复 待解决
HarmonyOS 如何进行音频合成
765浏览 • 1回复 待解决
HarmonyOS 是否支持串行队列
423浏览 • 1回复 待解决
HarmonyOS h5调用系统相机进行拍照
439浏览 • 1回复 待解决
HarmonyOS 如何调用函数
285浏览 • 1回复 待解决
如何进行系统崩溃监控?
1037浏览 • 1回复 待解决
HarmonyOS如何进行模拟定位?
299浏览 • 1回复 待解决
HarmonyOS HAP之间如何进行通信?
831浏览 • 1回复 待解决
HarmonyOS 如何进行堆栈反解
185浏览 • 1回复 待解决
HarmonyOS 如何进行DES加解密
1094浏览 • 1回复 待解决
HarmonyOS SDK 如何进行打包 和 混淆?
489浏览 • 1回复 待解决
HarmonyOS rcp如何进行fetch流式请求
354浏览 • 1回复 待解决
HarmonyOS 如何进行HmacSHA1加密
419浏览 • 1回复 待解决
HarmonyOS 如何进行同步代码编程
430浏览 • 1回复 待解决