در خدمت شما هستیم با آموزش تولید promise با کتابخانه BlueBird در Node.js از وب سایت آموزش برنامه نویسی سورس باران.در این جلسه که بخش هفتم آموزش Node.js است معرفی و آشنایی کامل با تولید promise با کتابخانه BlueBird در Node.js را خواهیم داشت. Bluebird یک کتابخانه Promise با تمام امکانات برای JavaScript است. قوی ترین ویژگی Bluebird این است که به شما امکان می دهد سایر ماژول های نود را ” promise” کنید تا از آنها به صورت غیر همزمان استفاده کنید. Promisify مفهومی است که برای توابع برگشت پذیر استفاده می شود. این مفهوم برای اطمینان از اینکه هر تابع برگشتی که به آن گفته می شود مقداری بازمی گرداند ، استفاده می شود.
بنابراین اگر یک ماژول Node JS شامل یک تابع برگشتی باشد که یک مقدار را برنمی گرداند ، و اگر ماژول نود را Promisify کنیم ، تمام توابع موجود در آن ماژول نود خاص به طور خودکار اصلاح می شوند تا اطمینان حاصل شود که یک مقدار را برمی گرداند. بنابراین می توانید از BlueBird استفاده کنید تا ماژول MongoDB به صورت غیر همزمان اجرا شود. این فقط سطح دیگری از سهولت را هنگام نوشتن برنامه های Node.js اضافه می کند. ما به نمونه ای از نحوه استفاده از ماژول bluebird خواهیم پرداخت. مثال ما ابتدا ارتباطی با ” “Employee collection”” در پایگاه داده “EmployeeDB” برقرار می کند. اگر اتصال ” “then”” برقرار شود ، آنگاه تمام رکوردهای موجود در مجموعه را بدست می آورد و مطابق با آنها را در کنسول نمایش می دهد.
تولید promise با کتابخانه BlueBird در Node.js
مرحله ۱) نصب ماژول های NPM
برای استفاده از Bluebird از درون یک برنامه گره ، ماژول Bluebird مورد نیاز است. برای نصب ماژول Bluebird ، دستور زیر را اجرا کنید.
npm install bluebird
مرحله ۲) قدم بعدی این است که ماژول bluebird را در کد خود وارد کنید و کل ماژول MongoDB ،را promisifyکنید. منظور ما از promisify کردن این است که bluebird اطمینان خواهد داد که هر روشی که در کتابخانه MongoDB تعریف شده است promise را بر می گرداند.
توضیح کد:
- دستور need برای گنجاندن کتابخانه Bluebird استفاده می شود.
- از روش ( )Bluebird’s .promisifyAll برای ایجاد نسخه async از هر روشی که ماژول MongoDB ارائه می دهد استفاده کنید. این تضمین می کند که هر روش از ماژول MongoDB ،در پس زمینه اجرا شود و اطمینان حاصل می کند که promise ، برای هر فراخوانی متد در کتابخانه MongoDB بازگردانده می شود.
مرحله ۳) مرحله آخر اتصال به بانک اطلاعاتی ما ، بازیابی تمام رکورد موجود در مجموعه ما و نمایش آنها در پرونده کنسول است.
توضیح کد:
- متوجه خواهید شد که ما به جای روش اتصال عادی برای اتصال به دیتابیس از روش “connectAsync” استفاده می کنیم. Bluebird در واقع کلمه کلیدی Async را به هر روشی در کتابخانه MongoDB اضافه می کند، تا تشخیص دهد، فراخوانی هایی که promise ها برمی گرداند و آنهایی که برنمی گرداند . بنابراین هیچ تضمینی وجود ندارد که روشهای بدون کلمه Async یک مقدار را برمی گردانند.
- مشابه روش اتصال با Async ، هم اکنون ما از روش findAsync برای بازگشت همه رکورد های موجود در مجموعه mongoDB ‘Employee’ استفاده می کنیم.
- سرانجام اگر promise، findAsync موفق را برگرداند ، ما باید یک قطعه کد را برای تکرار از طریق هر رکورد موجود در مجموعه تعریف کنیم و آنها را در سیاهه کنسول نمایش دهیم.
اگر مراحل فوق به درستی انجام شود ، تمام اسناد موجود در مجموعه Employee همانطور که در خروجی زیر نشان داده شده است در کنسول نمایش داده می شوند.
در اینجا کد مرجع شما وجود دارد:
var Promise = require('bluebird'); var mongoClient = Promiبse.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); }) });
The post آموزش تولید promise با کتابخانه BlueBird در Node.js appeared first on آموزش برنامه نویسی.