答案 0 :(得分:3)
不是这样。
您可以编写一个包装函数,该函数返回一个轮询,直到获得结果为止。
然后,承诺会调用您没有重复写入的函数(例如,使用setInterval
),直到它返回一个值,然后将其传递给解析。
function wrap_function () {
return new Promise(function (resolve, reject) {
var interval = setInterval(function () {
var result = the_origional_function();
if (result) {
clearInterval(interval);
resolve(result);
}
}, 2000);
});
}
(假设我在“几秒钟内”解释该语句)该函数将“正确地”返回一个值