gpt4 book ai didi

javascript - 当 Promise 无法传递给第三方库时怎么办?

转载 作者:太空宇宙 更新时间:2023-11-03 22:36:37 24 4
gpt4 key购买 nike

我正在使用 node.js 库 nomnom 进行命令行解析和 bluebird的 promise 。

Nomnom 提出执行 commands通过回调。不幸的是,回调不支持返回 promise 。

我想知道,处理这种接口(interface)不匹配的最佳方法是什么?在这种情况下,我正在考虑添加一个繁忙的循环,该循环会阻塞直到 promise 得到解决/拒绝(使用 isPending )。有更好的办法吗?

var parser = require("nomnom");
parser.command('somecommand').callback(function(opts) {
var p = thisFuncReturnsAPromise();
//have to block here since
//nomnom expects at the end of the callback that processing of the command is done.
})

最佳答案

var promise = new Bluebird(function(resolve, reject) { //Create a promise
myLib.doStuff(function() {
resolve(); //In a callback you resolve the promise
});
});

promise.then(function() { //Use the promise
console.log('Stuff done');
});

关于javascript - 当 Promise 无法传递给第三方库时怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27026227/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com