手写promise

这个 xmlParser 包,只支持回调的方式来返回结果,怎么改成能 await 的?

async function getConfig(xml) {
     xmlParser(xml, (err, result) => {
           if (err) {
                  console.log('TCL: getConfig -> err', err);
                  return;
        }
      console.log('TCL: getConfig -> result', JSON.stringify(result.Config.record[0].$.path));
   });
}

怎么才能直接这样调用

const configUrl=await getConfig(textXml)
console.log("TCL:main -> configUrl",configUrl)

await 后面跟的 promise,返回的是 promise 的 reject 或 resolve 的参数

改成如下图的方式,就可以 await 了

手写promise_第1张图片
WechatIMG32507.png

你可能感兴趣的:(手写promise)