كيف يعمل Readline emitKeypressEvents() في Node.js؟

Kyf Y Ml Readline Emitkeypressevents Fy Node Js



Node.js هي بيئة تشغيل جافا سكريبت مجانية مفتوحة المصدر ومعروفة جيدًا لإنشاء تطبيقات ويب ديناميكية وقابلة للتطوير بشكل كبير. يحقق هذه الوظيفة بمساعدة نظام الوحدة. ال ' وحدة 'النظام هو لبنة بناء التطبيق الذي يسمح للمطورين بإعادة استخدام الكود عند الحاجة. يتم تصنيفها إلى ثلاث فئات رئيسية: الوحدات 'المدمجة' و'المحلية' و'الطرف الثالث'.

من بين الوحدات المضمنة هناك ' readline 'وحدة تقوم بقراءة البيانات من المجرى القابل للقراءة سطرًا تلو الآخر بطريقة تسلسلية. تحتوي هذه الوحدة أيضًا على عدة طرق تؤدي وظائف خاصة مثل 'createInterface()' الذي ينشئ واجهة قراءة خطية، و'cursorTo()' يحرك المؤشر، ويستجيب 'emitKeypressEvents()' لأحداث لوحة المفاتيح، وغيرها الكثير.

ستوضح هذه المقالة عمل سطر القراءة 'emitKeypressEvents()' في Node.js.







كيف يعمل Readline 'emitKeypressEvents()' في Node.js؟

ال ' انبعاثKeypressEvents() 'هي الطريقة المحددة مسبقًا لوحدة 'readline' التي تستجيب لأحداث لوحة المفاتيح وتصدرها بناءً على المفتاح المضغوط. فهو يستجيب لجميع الضغطات على المفاتيح من لوحة المفاتيح مثل Enter ومفاتيح الاتجاه وغيرها الكثير أثناء التعامل مع سطر الأوامر.



بناء الجملة



بناء الجملة المعمم لـ 'emitkeypressEvents ()' هو كما يلي:





readline. emitKeypressEvents ( تدفق [ , واجهه المستخدم ] )

المعلمات المستخدمة في بناء الجملة ' انبعاثKeypressEvents() 'يتم شرح الطريقة أدناه:

  • تدفق: وهو يمثل الدفق القابل للقراءة والذي تتم قراءة البيانات منه.
  • واجهه المستخدم: إنها معلمة اختيارية تحدد الدفق 'القابل للقراءة' الذي تم إنشاؤه بالفعل.

قيمة الإرجاع: لا يُرجع 'emitKeypressEvents()' أي شيء.



الآن استخدم طريقة 'emitKeypressEvents()' عمليًا.

مثال: تطبيق طريقة 'emitKeypressEvents()' للتعامل مع حدث لوحة المفاتيح

يطبق هذا المثال طريقة 'emitKeypressEvents()' لطباعة المفتاح المضغوط وسماته:

مقدار ثابت readline = يتطلب ( 'خط القراءة' ) ;

وحدة التحكم. سجل ( 'اضغط على أي مفتاح في لوحة المفاتيح' )

readline. emitKeypressEvents ( عملية. com.stdin ) ;

لو ( عملية. com.stdin . isTTY )

عملية. com.stdin . setRawMode ( حقيقي ) ;

عملية. com.stdin . على ( 'ضغط المفتاح' , ( شارع، مفتاح ) => {

لو ( مفتاح. كنترول == حقيقي && مفتاح. اسم == 'ج' ) {

عملية. مخرج ( )

}

وحدة التحكم. سجل ( شارع )

وحدة التحكم. سجل ( مفتاح )

} )

شرح الكود أعلاه هو كما يلي:

  • أولاً، ' يتطلب() 'يستورد الأسلوب وحدة 'readline' في مشروع Node.js الحالي.
  • التالي ' console.log() ' يعرض البيان المقتبس في شاشة الإخراج.
  • وبعد ذلك ' انبعاثKeypressEvents() ' يمكّن أحداث لوحة المفاتيح من الاستجابة لأي ضغطة مفتاح في دفق الإدخال.
  • الآن، ' عملية.stdin 'الخاصية متسلسلة مع' .على حدث لوحة المفاتيح للرد عند الضغط على أي مفتاح من مفاتيح لوحة المفاتيح.
  • في تعريف وظيفة سهم رد الاتصال، ' لو 'يحدد الشرط كتلة التعليمات البرمجية التي تحدد الشرط: إذا كان ' كنترول 'يتم الضغط على المفتاح ويساوي' حقيقي 'ثم سيتم الخروج من العملية المحددة باستخدام' عملية الخروج () ' طريقة.
  • وأخيرًا ' console.log() 'طريقة تطبع' شارع ' و ال ' مفتاح 'قيم الحجج.

انتاج |

نفذ إلى ' Index.js 'ملف باستخدام الأمر المذكور أدناه:

مؤشر العقدة. js

يعرض الإخراج التالي المفتاح المضغوط مع السمة الخاصة به. للخروج من العملية اضغط على ' السيطرة + C ' مفتاح الاختصار:

هذا كل ما يتعلق بعمل 'emitKeypressEvents()' في Node.js.

خاتمة

سطر القراءة ' انبعاثKeypressEvents() 'تعمل الطريقة على حدث لوحة المفاتيح أثناء الضغط على أي مفتاح لوحة مفاتيح في الدفق القابل للقراءة. تكتشف هذه الطريقة مفتاح لوحة المفاتيح وتصدر سماته. من المفيد أثناء العمل في سطر الأوامر الاستجابة بالضغط على مفتاح لوحة المفاتيح. يشرح هذا المنشور عمل طريقة القراءة 'emitKeypressEvents()' في Node.js.