var itemIds, result, taskQueue, _i, _len;
itemIds = [];
taskQueue = async.queue(function(task, callback) {
console.log('Hello ' + task.name);
return callback();
}, 10);
for (_i = 0, _len = results.length; _i < _len; _i++) {
result = results[_i];
taskQueue.push({}, function(err) {
var item;
item = new Item(result);
return item.save(function(err, new_item) {
itemIds[itemIds.length] = new_item._id;
console.log(new_item._id);
return console.log(itemIds);
});
});
}
taskQueue.drain = function() {
console.log('Queue Done!');
return console.log(itemIds.length);
};
は私のコードです。しかし、drain
を実行すると、itemIdsは空白として表示されます。これはのモジュールを使用しています。非同期タスクの可変スコープとは何ですか?
を使用してコードを簡素化する個人的にお勧めしますが、間違ったご使用して 'async.queue'のようですね。 – Raynos