Bluebird NPM: Janji Bluebird JS dengan Contoh

Apa itu Bluebird JS?

Bluebird JS adalah perpustakaan Promise berfitur lengkap untuk JavaSkrip. Fitur terkuat Bluebird adalah memungkinkan Anda untuk "menjanjikan" modul Node lain agar dapat menggunakannya secara asinkron. Promisify adalah konsep yang diterapkan pada fungsi panggilan balik. Konsep ini digunakan untuk memastikan bahwa setiap fungsi panggilan balik yang dipanggil mengembalikan beberapa nilai.

Jadi jika a NodeJS modul berisi fungsi panggilan balik yang tidak mengembalikan nilai, dan jika kita menjanjikan modul node, semua fungsi dalam modul node tertentu akan secara otomatis dimodifikasi untuk memastikan bahwa modul tersebut mengembalikan nilai.

Jadi Anda bisa menggunakan BlueBird untuk membuatnya MongoDB modul berjalan secara asinkron. Hal ini menambah kemudahan saat menulis aplikasi Node.js.

Kita akan melihat contoh cara menggunakan modul bluebird.

Contoh kita pertama-tama akan membuat koneksi ke “Koleksi Karyawan” di database “EmployeeDB”. Jika koneksi "lalu" dibuat, maka ia akan mendapatkan semua catatan dalam koleksi dan menampilkannya di konsol sesuai dengan itu.

Cara Menghasilkan Janji dengan Bluebird JS Library

Berikut adalah contoh langkah demi langkah menghasilkan janji dengan perpustakaan Bluebird JS:

Langkah 1) Memasang Modul NPM

Untuk menggunakan Bluebird dari dalam aplikasi Node, diperlukan modul Bluebird. Untuk menginstal modul Bluebird, jalankan perintah di bawah ini

npm instal bluebird

Langkah 2) Sertakan modul Bluebird

Langkah selanjutnya adalah memasukkan modul bluebird ke dalam kode Anda dan menjanjikan keseluruhannya MongoDB modul. Yang kami maksud dengan promisify adalah bluebird akan memastikan bahwa setiap metode yang ditentukan dalam MongoDB perpustakaan mengembalikan janji.

Hasilkan Janji dengan Bluebird JS Library

Penjelasan Kode: -

  1. Perintah require digunakan untuk menyertakan perpustakaan Bluebird.
  2. Gunakan metode .promisifyAll() Bluebird untuk membuat versi async dari setiap metode MongoDB modul menyediakan. Hal ini memastikan bahwa setiap metode MongoDB modul akan berjalan di latar belakang dan memastikan bahwa janji dikembalikan untuk setiap pemanggilan metode di MongoDB Perpustakaan.

Langkah 3) Hubungkan ke Database

Langkah terakhir adalah menyambung ke database kami, mengambil semua catatan dalam koleksi kami dan menampilkannya di log konsol kami.

Hasilkan Janji dengan Bluebird JS Library

Penjelasan Kode: -

  1. Anda akan melihat bahwa kami menggunakan metode “connectAsync” bukan metode koneksi normal untuk menghubungkan ke DatabaseBluebird sebenarnya menambahkan kata kunci Async ke setiap metode di MongoDB pustaka untuk membedakan panggilan yang mengembalikan janji dan yang tidak. Jadi tidak ada jaminan bahwa metode tanpa kata Async akan mengembalikan nilai.
  2. Mirip dengan metode connectAsync, kami sekarang menggunakan metode findAsync untuk mengembalikan semua catatan dalam koleksi mongoDB 'Employee'.
  3. Akhirnya, jika findAsync mengembalikan janji yang berhasil, maka kami mendefinisikan blok kode untuk mengulangi setiap rekaman dalam koleksi dan menampilkannya di log konsol.

Jika langkah di atas dilakukan dengan benar, semua dokumen dalam koleksi Karyawan akan ditampilkan di konsol seperti yang ditunjukkan pada output di bawah ini.

Hasilkan Janji dengan Bluebird JS Library

Berikut ini kode untuk referensi Anda:

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