sql >> Database teknologi >  >> NoSQL >> MongoDB

At forvandle et Mongoose seeding script til et løfte

Prøv at gøre det gennem new Promise og Promise.all

new Promise at skabe et nyt løfte. Den beståede funktion vil modtage funktioner løse og afvise som sine argumenter, der kan kaldes for at besegle skæbnen for det skabte løfte.

Promise.all er nyttig, når du vil vente på, at mere end ét løfte er fuldført.

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();
        })
    });
}



  1. Hurtig personsøgning med MongoDB

  2. Stigende hukommelsesgrænse for mongodb samlede job

  3. Hvordan gør jeg mere end/mindre end at bruge MongoDB?

  4. Hvordan fungerer MongoDB $text-søgning?