0
У меня есть этот цикл:метеор, как управлять обновлениями асинхронное в цикле
properties.forEach(function(property) {
console.log("property: " + property);
var upsertValues = {};
upsertValues["ID"] = property.ID;
Properties.upsert(upsertValues,
{$set: property},
function(err, nbr) {
if(err)
console.log(err);
else
console.log("upsert successful" + nbr);
});
});
setTimeout(function() {
Fiber(function() {
Meteor.call("removeOldProperties", modification_date);
}).run();
}, 30000)
})
В основном, это обновляет скамейка документов и в конце концов, он удаляет все сразу, которые не были обновлены.
Мне пришлось использовать TimeOut, потому что без этого я удаляю документы перед их обновлением, так как все операторы Meteor.upsert являются асинхронными.
Есть ли лучший способ сделать это (без использования этого таймаута)?
Спасибо,
Спасибо. это действительно относится к id. Я не использовал символ подчеркивания, потому что я разбираю документы через rest api, и я вставляю их «как есть» в свой db. Но я должен был ... – ndemoreau