Bluebird NPM: وعد Bluebird JS مع مثال

ما هو بلوبيرد JS؟

Bluebird JS هي مكتبة وعد كاملة الميزات لجافا سكريبت. أقوى ميزة في Bluebird هي أنها تسمح لك بـ "الوعد" بوحدات Node الأخرى من أجل استخدامهاsyncبصوت عالٍ. Promisify هو مفهوم مطبق على وظائف رد الاتصال. يتم استخدام هذا المفهوم للتأكد من أن كل وظيفة رد اتصال يتم استدعاؤها ترجع بعض القيمة.

حتى إذا كان أ NodeJS تحتوي الوحدة النمطية على وظيفة رد اتصال لا تُرجع قيمة، وإذا وعدنا بوحدة العقدة، فسيتم تعديل جميع الوظائف في وحدة العقدة المحددة تلقائيًا للتأكد من أنها تُرجع قيمة.

لذلك يمكنك استخدام BlueBird لإنشاء MongoDB تشغيل الوحدة أsyncبصوت عالٍ. وهذا يضيف مستوى آخر من السهولة عند كتابة تطبيقات Node.js.

سنلقي نظرة على مثال لكيفية استخدام وحدة بلوبيرد.

سيقوم مثالنا أولاً بإنشاء اتصال بـ "مجموعة الموظفين" في قاعدة بيانات "EmployeeDB". إذا تم إنشاء اتصال "ثم"، فسيحصل على كافة السجلات الموجودة في المجموعة ويعرضها في وحدة التحكم وفقًا لذلك.

كيفية إنشاء الوعود باستخدام مكتبة Bluebird JS

هنا هو المثال خطوة بخطوة ل توليد الوعود مع مكتبة Bluebird JS:

الخطوة 1) تثبيت وحدات NPM

لاستخدام Bluebird من داخل تطبيق Node، يلزم توفر وحدة Bluebird. لتثبيت وحدة بلوبيرد، قم بتشغيل الأمر أدناه

تثبيت npm بلوبيرد

الخطوة 2) تضمين وحدات بلوبيرد

الخطوة التالية هي تضمين وحدة بلوبيرد في التعليمات البرمجية الخاصة بك والتعهد بها بالكامل MongoDB وحدة. بالوعد، نعني أن بلوبيرد ستضمن أن كل طريقة محددة في MongoDB المكتبة ترجع الوعد.

إنشاء الوعود باستخدام مكتبة Bluebird JS

شرح الكود :-

  1. يتم استخدام الأمر require لتضمين مكتبة Bluebird.
  2. استخدم طريقة .promisifyAll() الخاصة بـ Bluebird لإنشاء ملفsync نسخة من كل طريقة MongoDB توفر الوحدة. وهذا يضمن أن كل طريقة من MongoDB سيتم تشغيل الوحدة النمطية في الخلفية والتأكد من إرجاع الوعد لكل استدعاء أسلوب في MongoDB مكتبة.

الخطوة 3) الاتصال بقاعدة البيانات

الخطوة الأخيرة هي الاتصال بقاعدة البيانات الخاصة بنا، واسترداد جميع السجلات الموجودة في مجموعتنا وعرضها في سجل وحدة التحكم لدينا.

إنشاء الوعود باستخدام مكتبة Bluebird JS

شرح الكود :-

  1. ستلاحظ أننا نستخدم "connectAsync"بدلاً من طريقة الاتصال العادية للاتصال بـ قاعدة بيانات. يضيف بلوبيرد في الواقع حرف Async الكلمة الأساسية لكل طريقة في MongoDB مكتبة لتمييز تلك المكالمات التي ترد الوعود وتلك التي لا تفعل ذلك. لذلك ليس هناك ما يضمن أن الأساليب التي لا تحتوي على Async سترجع الكلمة قيمة.
  2. على غرار ConnectAsync الطريقة، نحن الآن نستخدم findAsync طريقة إرجاع كافة السجلات الموجودة في mongoDB مجموعة "الموظف".
  3. أخيرًا، إذا كان العثور على Async تقوم بإرجاع وعد ناجح ثم نحدد كتلة من التعليمات البرمجية للتكرار من خلال كل سجل في المجموعة وعرضها في سجل وحدة التحكم.

إذا تم تنفيذ الخطوات المذكورة أعلاه بشكل صحيح، فسيتم عرض جميع المستندات الموجودة في مجموعة الموظفين في وحدة التحكم كما هو موضح في الإخراج أدناه.

إنشاء الوعود باستخدام مكتبة Bluebird JS

هذا هو الكود للرجوع اليها:

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