Hogyan működik a Readline emitKeypressEvents() a Node.js-ben?

Hogyan Mukodik A Readline Emitkeypressevents A Node Js Ben



A Node.js egy ingyenes, nyílt forráskódú, jól ismert JavaScript futtatókörnyezet dinamikus és nagymértékben méretezhető webalkalmazások létrehozására. Ezt a funkciót a modulrendszer segítségével éri el. A ' modult ” rendszer egy alkalmazás építőköve, amely lehetővé teszi a fejlesztők számára, hogy szükség esetén újra felhasználják a kódot. Három fő kategóriába sorolható: „beépített”, „helyi” és „harmadik féltől származó” modulok.

A beépített modulok között van egy „ readline ” modul, amely soronként, szekvenciálisan olvassa be az adatokat az olvasható adatfolyamból. Ez a modul számos olyan módszert tartalmaz, amelyek speciális funkciókat hajtanak végre, mint például a „createInterface()” egy readline interfészt hoz létre, a „cursorTo()” mozgatja a kurzort, az „emitKeypressEvents()” reagál a billentyűzet eseményeire, és még sok más.

Ez az írás bemutatja az „emitKeypressEvents()” readline működését a Node.js-ben.







Hogyan működik a Readline „emitKeypressEvents()” a Node.js-ben?

A ' emitKeypressEvents() ” a „readline” modul előre definiált módszere, amely reagál a billentyűzet eseményeire és a lenyomott billentyű alapján kiadja azokat. A parancssor kezelése közben reagál a billentyűzet minden billentyűlenyomására, például az Enter-re, az iránybillentyűkre és sok másra.



Szintaxis



Az „emitkeypressEvents()” általánosított szintaxisa a következő:





readline. emitKeypressEvents ( folyam [ , felület ] )

A „ emitKeypressEvents() ” módszert az alábbiakban ismertetjük:

  • folyam: Azt az olvasható adatfolyamot képviseli, amelyből az adatokat olvassák.
  • felület: Ez egy opcionális paraméter, amely a már létrehozott „olvasható” adatfolyamot határozza meg.

Visszatérési érték: Az „emitKeypressEvents()” nem ad vissza semmit.



Most gyakorlatilag használja az „emitKeypressEvents()” metódust.

Példa: Az „emitKeypressEvents()” módszer alkalmazása a billentyűzetesemény kezelésére

Ez a példa az „emitKeypressEvents()” metódust alkalmazza a lenyomott billentyű és attribútumainak kinyomtatására:

const readline = igényelnek ( 'olvasóvonal' ) ;

konzol. log ( 'Nyomja meg bármelyik billentyűzet billentyűt' )

readline. emitKeypressEvents ( folyamat. stdin ) ;

ha ( folyamat. stdin . isTTY )

folyamat. stdin . setRawMode ( igaz ) ;

folyamat. stdin . tovább ( 'gombnyomás' , ( str, kulcs ) => {

ha ( kulcs. ctrl == igaz && kulcs. név == 'c' ) {

folyamat. kijárat ( )

}

konzol. log ( str )

konzol. log ( kulcs )

} )

A fenti kód magyarázata a következő:

  • Először is a „ igényel() ” metódus importálja a „readline” modult az aktuális Node.js projektben.
  • Ezután a „ console.log() ” megjeleníti az idézett állítást a kimeneti képernyőn.
  • Ezt követően a „ emitKeypressEvents() ” lehetővé teszi, hogy a billentyűzet eseményei reagáljanak a beviteli adatfolyam bármely gombnyomására.
  • Most a ' folyamat.stdin ' tulajdonság össze van kapcsolva a ' .tovább ” billentyűzetesemény, amely a billentyűzet bármely billentyűjének megnyomására reagál.
  • A visszahívási nyíl függvény definíciójában a „ ha ” feltétel egy kódblokkot határoz meg, amely egy feltételt ad meg: ha a „ ctrl ' gomb lenyomva és egyenlő a ' igaz ', akkor az adott folyamat a ' process.exit() ” módszerrel.
  • Végül a „ console.log() ' módszer kiírja a ' str ' és a ' kulcs ” érvek értékeit.

Kimenet

Végrehajtás a ' index.js ” fájlt az alábbi paranccsal:

csomópont index. js

A következő kimenet megjeleníti a lenyomott billentyűt az attribútumával együtt. A folyamatból való kilépéshez nyomja meg a „ Ctrl+C ' gyorsbillentyű:

Ez minden az „emitKeypressEvents()” működéséről szól a Node.js-ben.

Következtetés

Az olvasmány ' emitKeypressEvents() ” metódus működik a billentyűzet eseményén, miközben bármelyik billentyűzet billentyűt lenyomja az olvasható adatfolyamba. Ez a módszer észleli a billentyűzet billentyűjét, és kiadja annak attribútumait. Hasznos, ha a parancssorban dolgozik, ha a billentyűzet billentyűjének megnyomásával válaszol. Ez a bejegyzés elmagyarázza a readline „emitKeypressEvents()” metódus működését a Node.js-ben.