我有一个数组,我循环创建每个承诺,然后将承诺添加到另一个承诺数组。然后我将这些承诺传递给Promise.all
并等待它们完成。我想要做的是给每个人添加一个延迟,以便延迟执行。PromiseJS中的延迟承诺
这里是我的代码:
function updateStatus(message) {
return new Promise(function(fulfill, reject) {
var params = { status: message };
twitter.post('statuses/update', params, function(error, tweet, response) {
if(error) reject(error);
else fulfill(tweet);
});
});
}
那是我的承诺。后来我遍历促销阵列,并将它们添加到一个承诺阵列:
fetchPromotions.then(function(promotions) {
var promises = [];
for(var i=0; i < promotions.length; i++) {
promises.push(updateStatus(promotion[i].text));
}
return Promise.all(promises);
}).then(...);
然后我恨不得用Promise.all()
完成。
我想要做的是给每个承诺增加一个延迟。所以第一次马上跑,第二次1分钟后,第三次2分钟后等。
PromiseJS可以吗?
Node.js,没有'window'对象。 – alexmac
删除'窗口' – ykaragol
我是一种希望PromiseJS有一个解决方案。我会尝试一下,我需要将'delay'传递给函数,因为它们有不同的时间。 – BugHunterUK