Bluebird NPM: Bluebird JS Promise példával

Mi az a Bluebird JS?

A Bluebird JS egy teljes értékű Promise könyvtár a számára JavaForgatókönyv. A Bluebird legerősebb tulajdonsága, hogy lehetővé teszi más csomóponti modulok „megígérését” az aszinkron használat érdekében. A Promisify a visszahívási függvényekre alkalmazott fogalom. Ez a koncepció annak biztosítására szolgál, hogy minden meghívott visszahívási függvény adjon vissza valamilyen értéket.

Tehát ha a NodeJS modul tartalmaz egy visszahívási függvényt, amely nem ad vissza értéket, és ha megígérjük a csomópont modult, akkor az adott csomópontmodulban lévő összes függvény automatikusan módosul annak biztosítására, hogy értéket adjon vissza.

Így a BlueBird segítségével elkészítheti a MongoDB A modul aszinkron módon fut. Ez csak egy további könnyedséget ad a Node.js alkalmazások írásához.

Megnézünk egy példát a bluebird modul használatára.

Példánk először kapcsolatot létesít az „EmployeeDB” adatbázis „Employee collection” részével. Ha az „akkor” kapcsolat létrejön, akkor megkapja a gyűjtemény összes rekordját, és ennek megfelelően megjeleníti azokat a konzolon.

Ígéretek generálása a Bluebird JS Library segítségével

Íme a lépésről lépésre bemutatott példa ígéreteket generálni Bluebird JS könyvtárral:

1. lépés) Az NPM-modulok telepítése

A Bluebird Node alkalmazáson belüli használatához a Bluebird modul szükséges. A Bluebird modul telepítéséhez futtassa az alábbi parancsot

npm telepítse a bluebird-et

2. lépés) Tartalmazza a Bluebird modulokat

A következő lépés az, hogy a bluebird modult bele kell foglalni a kódba, és megígérni az egészet MongoDB modul. Promisify alatt azt értjük, hogy a bluebird gondoskodni fog arról, hogy minden egyes, a MongoDB A könyvtár ígéretet ad.

Generáljon ígéreteket a Bluebird JS Library segítségével

Code Magyarázat:-

  1. A request parancs a Bluebird könyvtár felvételére szolgál.
  2. Használja a Bluebird .promisifyAll() metódusát minden metódus aszinkron verziójának létrehozásához MongoDB modul biztosítja. Ez biztosítja, hogy minden módszer a MongoDB modul a háttérben fog futni, és biztosítja, hogy minden egyes metódushíváshoz ígéretet adjon vissza MongoDB könyvtár.

3. lépés) Csatlakozzon az adatbázishoz

Az utolsó lépés az adatbázisunkhoz való csatlakozás, a gyűjteményünk összes rekordjának lekérése és megjelenítése a konzolnaplónkban.

Generáljon ígéreteket a Bluebird JS Library segítségével

Code Magyarázat:-

  1. Észre fogja venni, hogy a „connectAsync” módszert használjuk a normál csatlakozási mód helyett a csatlakozáshoz adatbázis. A Bluebird valójában hozzáadja az Async kulcsszót az egyes metódusokhoz MongoDB könyvtárat, hogy megkülönböztesse azokat a hívásokat, amelyek ígéretet adnak, és azokat, amelyek nem. Tehát nincs garancia arra, hogy az Async szó nélküli metódusok értéket adnak vissza.
  2. A connectAsync metódushoz hasonlóan most is a findAsync metódust használjuk a mongoDB „Employee” gyűjtemény összes rekordjának visszaadására.
  3. Végül, ha a findAsync sikeres ígéretet ad vissza, akkor definiálunk egy kódblokkot a gyűjtemény minden egyes rekordján keresztül történő iterációhoz, és megjelenítjük azokat a konzolnaplóban.

Ha a fenti lépéseket megfelelően hajtja végre, az Alkalmazotti gyűjtemény összes dokumentuma megjelenik a konzolon, az alábbi kimeneten látható módon.

Generáljon ígéreteket a Bluebird JS Library segítségével

Íme a kód a referenciaként:

var Promise = require('bluebird');

var mongoClient = Promise.promisifyAll(require('mongodb')).MongoClient;

var url = 'mongodb://localhost/EmployeeDB';
mongoClient.connectAsync('mongodb://localhost/EmployeeDB')

.then(function(db) {
        return db.collection('Employee').findAsync({})

    })
    .then(function(cursor) {
        cursor.each(function(err, doc) {
            console.log(doc);
        })
    });

Foglald össze ezt a bejegyzést a következőképpen: