Veuillez essayer de le faire via new Promise
et Promise.all
new Promise
créer une nouvelle promesse. La fonction transmise recevra comme arguments les fonctions resolve et rejet qui peuvent être appelées pour sceller le sort de la promesse créée.
Promise.all
est utile lorsque vous souhaitez attendre que plusieurs promesses se terminent.
var bookOps = [];
books.forEach(function (book) {
bookOps.push(saveBookAsync(book));
});
Promise.all(bookOps).then(function() {
bookshelfConn.close(function () {
console.log('Mongoose connection closed!');
});
});
function saveBookAsync(book) {
return new Promise(function(resolve, reject) {
new Book(book).save(function(err) {
if (err)
reject(err);
else
resolve();
})
});
}