कृपया इसे new Promise के माध्यम से करने का प्रयास करें
और Promise.all
new Promise एक नया वादा बनाने के लिए। पारित समारोह में कार्यों को हल किया जाएगा और इसके तर्कों के रूप में अस्वीकार कर दिया जाएगा जिसे बनाए गए वादे के भाग्य को सील करने के लिए कहा जा सकता है।
Promise.all तब उपयोगी होता है जब आप एक से अधिक वादों को पूरा करने के लिए प्रतीक्षा करना चाहते हैं।
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();
})
});
}