Bitte versuchen Sie es über new Promise
und Promise.all
new Promise
ein neues Versprechen zu schaffen. Die übergebene Funktion erhält als Argumente die Funktionen „resolve“ und „reject“, die aufgerufen werden können, um das Schicksal des erstellten Promise zu besiegeln.
Promise.all
ist nützlich, wenn Sie warten möchten, bis mehr als ein Promise abgeschlossen ist.
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();
})
});
}