I'm having trouble with the async nature of node in general. Can someone help me with this block of code. For various reasons I can only insert 1 row at a time into the database I am working with. And actually, it would be even better if I could add a short delay to only insert 1 row per second into the database.
Here is a short section of my js code.
console.log('*** Inserting Records ***')
insertPromises = []
_.each(dbRecords, function (item) {
var insertItem = buildRecord(item)
insertPromises.push(conn.create(insertItem))
})
Promise.all(insertPromises).then(function (res) {
_.each(res, function (item) {
if (!item.success) {
console.log("### Error ### " + JSON.stringify(res[i].errors))
}
})
console.log('*** Inserted ' + res.length + ' Contacts')
})
My main question is how can I force the loop to wait for the conn.create promise to resolve before continuing the loop? And is there a way to slow the loop to 1 iteration per second?
via Todd
No comments:
Post a Comment