Kā Readline emitKeypressEvents() darbojas Node.js?

Ka Readline Emitkeypressevents Darbojas Node Js



Node.js ir bezmaksas atvērtā koda, labi pazīstama JavaScript izpildlaika vide dinamisku un ļoti mērogojamu tīmekļa lietojumprogrammu izveidei. Tas nodrošina šo funkcionalitāti ar moduļu sistēmas palīdzību. ' modulis ” sistēma ir lietojumprogrammas pamatelements, kas ļauj izstrādātājiem atkārtoti izmantot kodu, kad vien tas ir nepieciešams. Tas ir iedalīts trīs galvenajās kategorijās: “iebūvētie”, “lokālie” un “trešās puses” moduļi.

Starp iebūvētajiem moduļiem ir ' lasāmrinda ” modulis, kas secīgi nolasa datus no lasāmās straumes. Šajā modulī ir arī vairākas metodes, kas veic īpašas funkcijas, piemēram, “createInterface()” izveido lasīšanas interfeisu, “cursorTo()” pārvieto kursoru, “emitKeypressEvents()” reaģē uz tastatūras notikumiem un daudzas citas.

Šis raksts demonstrēs lasīšanas līnijas “emitKeypressEvents()” darbību pakalpojumā Node.js.







Kā Readline “emitKeypressEvents()” darbojas pakalpojumā Node.js?

' emitKeypressEvents() ” ir “lasīšanas līnijas” moduļa iepriekš definēta metode, kas reaģē uz tastatūras notikumiem un izstaro tos, pamatojoties uz nospiesto taustiņu. Tas reaģē uz visiem tastatūras taustiņu nospiešanas gadījumiem, piemēram, Enter, virziena taustiņiem un daudziem citiem, strādājot ar komandrindu.



Sintakse



“emitkeypressEvents()” vispārīgā sintakse ir šāda:





lasāmrinda. emitKeypressEvents ( straume [ , saskarne ] )

Parametri, kas tiek izmantoti sintaksē ' emitKeypressEvents() ” metode ir izskaidrota tālāk:

  • straume: Tas attēlo lasāmo straumi, no kuras tiek lasīti dati.
  • interfeiss: Tas ir neobligāts parametrs, kas norāda jau izveidoto “lasāmo” straumi.

Atgriešanas vērtība: “emitKeypressEvents()” neko neatgriež.



Tagad praktiski izmantojiet metodi “emitKeypressEvents()”.

Piemērs: metodes “emitKeypressEvents()” izmantošana, lai apstrādātu tastatūras notikumu

Šajā piemērā tiek izmantota metode “emitKeypressEvents()”, lai izdrukātu nospiesto taustiņu un tās atribūtus:

konst lasāmrinda = pieprasīt ( 'lasīšanas līnija' ) ;

konsole. žurnāls ( 'Nospiediet jebkuru tastatūras taustiņu' )

lasāmrinda. emitKeypressEvents ( process. stdin ) ;

ja ( process. stdin . isTTY )

process. stdin . setRawMode ( taisnība ) ;

process. stdin . ieslēgts ( 'taustiņu nospiešana' , ( str, atslēga ) => {

ja ( taustiņu. ctrl == taisnība && taustiņu. nosaukums == 'c' ) {

process. Izeja ( )

}

konsole. žurnāls ( str )

konsole. žurnāls ( taustiņu )

} )

Iepriekš minētā koda skaidrojums ir šāds:

  • Pirmkārt, ' prasīt () ” metode importē “readline” moduli pašreizējā Node.js projektā.
  • Tālāk “ console.log() ” parāda citēto paziņojumu izvades ekrānā.
  • Pēc tam ' emitKeypressEvents() ” ļauj tastatūras notikumiem reaģēt uz jebkuru taustiņu nospiešanu ievades straumē.
  • Tagad “ process.stdin 'īpašums ir savienots ar ' .ieslēgts ” tastatūras notikums, lai reaģētu, nospiežot jebkuru tastatūras taustiņu.
  • Atzvanīšanas bultiņas funkcijas definīcijā “ ja ” nosacījums definē koda bloku, kas norāda nosacījumu: ja “ ctrl ' taustiņš ir nospiests un vienāds ar ' taisnība ', tad dotais process tiks aizvērts, izmantojot ' process.exit() ” metode.
  • Visbeidzot, ' console.log() ' metode izdrukā ' str ” un „ taustiņu ” argumentu vērtības.

Izvade

Izpildīt uz ' index.js ” failu, izmantojot tālāk norādīto komandu:

mezglu indekss. js

Nākamajā izvadē tiek parādīts nospiestais taustiņš kopā ar tā atribūtu. Lai izietu no procesa, nospiediet ' Ctrl+C ” īsinājumtaustiņš:

Tas viss attiecas uz “emitKeypressEvents()” darbību pakalpojumā Node.js.

Secinājums

Lasīšanas līnija ' emitKeypressEvents() ” metode darbojas tastatūras notikumā, vienlaikus nospiežot jebkuru tastatūras taustiņu lasāmajā straumē. Šī metode nosaka tastatūras taustiņu un izstaro tā atribūtu. Strādājot komandrindā, ir noderīgi atbildēt, nospiežot tastatūras taustiņu. Šajā ziņojumā ir izskaidrota lasīšanas līnijas “emitKeypressEvents()” metodes darbība pakalpojumā Node.js.