Entre els mòduls integrats, hi ha un ' readline ” mòdul que llegeix les dades del flux llegible línia per línia de manera seqüencial. Aquest mòdul conté a més diversos mètodes que realitzen funcionalitats especials, com ara 'createInterface()' crea una interfície de lectura, 'cursorTo()' mou el cursor, 'emitKeypressEvents()' respon als esdeveniments del teclat i molts altres.
Aquest escrit demostrarà el funcionament de la línia de lectura 'emitKeypressEvents()' a Node.js.
Com funciona Readline 'emitKeypressEvents()' a Node.js?
El ' emitKeypressEvents() ” és el mètode predefinit del mòdul “readline” que respon als esdeveniments del teclat i els emet en funció de la tecla premuda. Respon a totes les pressions de tecles des del teclat, com ara Enter, tecles direccionals i moltes altres mentre es tracta de la línia d'ordres.
Sintaxi
La sintaxi generalitzada de 'emitkeypressEvents()' és la següent:
readline. emitKeypressEvents ( corrent [ , interfície ] )
Els paràmetres utilitzats en la sintaxi del ' emitKeypressEvents() ” s'expliquen a continuació:
- corrent: Representa el flux llegible des del qual es llegeixen les dades.
- interfície: És un paràmetre opcional que especifica el flux 'llegible' ja creat.
Valor de retorn: El 'emitKeypressEvents()' no retorna res.
Ara utilitzeu el mètode 'emitKeypressEvents()' pràcticament.
Exemple: aplicació del mètode 'emitKeypressEvents()' per gestionar l'esdeveniment del teclat
Aquest exemple aplica el mètode 'emitKeypressEvents()' per imprimir la tecla premuda i els seus atributs:
const readline = requereixen ( 'línea de lectura' ) ;consola. registre ( 'Premeu qualsevol tecla del teclat' )
readline. emitKeypressEvents ( procés. stdin ) ;
si ( procés. stdin . és TTY )
procés. stdin . setRawMode ( veritat ) ;
procés. stdin . activat ( 'premer tecles' , ( str, clau ) => {
si ( clau. ctrl == veritat && clau. nom == 'c' ) {
procés. sortida ( )
}
consola. registre ( str )
consola. registre ( clau )
} )
L'explicació del codi anterior és la següent:
- En primer lloc, el ' requerir () ” importa el mòdul “readline” al projecte Node.js actual.
- A continuació, el ' console.log() ” mostra la declaració citada a la pantalla de sortida.
- Després d'això, el ' emitKeypressEvents() ” permet que els esdeveniments del teclat responguin a qualsevol premsa de tecla del flux d'entrada.
- Ara, el ' procés.stdin La propietat està concatenada amb la propietat .en ” esdeveniment del teclat per respondre en prémer qualsevol tecla del teclat.
- A la definició de la funció de fletxa de retorn de trucada, el ' si ” condició defineix un bloc de codi que especifica una condició: si el “ ctrl Es prem la tecla ' i és igual a ' veritat ', aleshores el procés donat sortirà utilitzant el ' process.exit() ” mètode.
- Finalment, el ' console.log() El mètode ' imprimeix el ' str ' i la ' clau ” arguments valors.
Sortida
Executar a ' index.js ” mitjançant l'ordre que s'indica a continuació:
índex de nodes. jsLa sortida següent mostra la tecla pressionada juntament amb el seu atribut. Per sortir del procés premeu ' Ctrl+C ” tecla de drecera:
Això és tot sobre el funcionament de 'emitKeypressEvents()' a Node.js.
Conclusió
La línia de lectura ' emitKeypressEvents() ” El mètode funciona a l'esdeveniment del teclat mentre prem qualsevol tecla del teclat al flux llegible. Aquest mètode detecta la tecla del teclat i emet el seu atribut. És útil quan es treballa a la línia d'ordres per respondre prement la tecla del teclat. Aquesta publicació ha explicat el funcionament del mètode readline 'emitKeypressEvents()' a Node.js.