Printre modulele încorporate, există un „ Citeste linia ” modul care citește datele din fluxul citibil linie cu linie într-o manieră secvențială. Acest modul conține mai multe metode care efectuează funcționalități speciale, cum ar fi „createInterface()” creează o interfață readline, „cursorTo()” mută cursorul, „emitKeypressEvents()” răspunde la evenimentele de la tastatură și multe altele.
Acest articol va demonstra funcționarea liniei de citire „emitKeypressEvents()” în Node.js.
Cum funcționează Readline „emitKeypressEvents()” în Node.js?
„ emitKeypressEvents() ” este metoda predefinită a modulului „readline” care răspunde la evenimentele de la tastatură și le emite pe baza tastei apăsate. Răspunde la toate apăsările de taste de la tastatură, cum ar fi Enter, tastele direcționale și multe altele, în timp ce se ocupă cu linia de comandă.
Sintaxă
Sintaxa generalizată a „emitkeypressEvents()” este următoarea:
Citeste linia. emitKeypressEvents ( curent [ , interfata ] )
Parametrii utilizați în sintaxa „ emitKeypressEvents() ” metoda sunt explicate mai jos:
- curent: Reprezintă fluxul care poate fi citit din care sunt citite datele.
- interfata: Este un parametru opțional care specifică fluxul „lizibil” deja creat.
Valoare returnată: „emitKeypressEvents()” nu returnează nimic.
Acum folosiți metoda „emitKeypressEvents()” practic.
Exemplu: aplicarea metodei „emitKeypressEvents()” pentru a gestiona evenimentul de la tastatură
Acest exemplu aplică metoda „emitKeypressEvents()” pentru a tipări tasta apăsată și atributele acesteia:
const Citeste linia = cere ( 'Citeste linia' ) ;consolă. Buturuga ( „Apăsați orice tastă de la tastatură” )
Citeste linia. emitKeypressEvents ( proces. stdin ) ;
dacă ( proces. stdin . este TTY )
proces. stdin . setRawMode ( Adevărat ) ;
proces. stdin . pe ( „apăsare taste” , ( str, cheie ) => {
dacă ( cheie. ctrl == Adevărat && cheie. Nume == 'c' ) {
proces. Ieșire ( )
}
consolă. Buturuga ( str )
consolă. Buturuga ( cheie )
} )
Explicația codului de mai sus este următoarea:
- În primul rând, „ cere() ” importă modulul „readline” în proiectul actual Node.js.
- În continuare, „ console.log() ” afișează declarația citată în ecranul de ieșire.
- După aceea, „ emitKeypressEvents() ” permite evenimentelor de la tastatură să răspundă la orice apăsare de tastă din fluxul de intrare.
- Acum ' proces.stdin ” proprietatea este concatenată cu ” .pe ” eveniment de la tastatură pentru a răspunde la apăsarea oricărei taste de la tastatură.
- În definiția funcției săgeată de apel invers, „ dacă „condiția definește un bloc de cod care specifică o condiție: dacă „ ctrl tasta ” este apăsată și egală cu “ Adevărat ” atunci procesul dat va ieși prin utilizarea „ proces.ieșire() ” metoda.
- În cele din urmă, „ console.log() ” metoda imprimă “ str ' si ' cheie ” argumente valori.
Ieșire
Execută la „ index.js ” fișier folosind comanda menționată mai jos:
indexul nodului. jsUrmătoarea ieșire afișează tasta apăsată împreună cu atributul acesteia. Pentru a ieși din proces apăsați butonul „ Ctrl+C ' scurtătură:
Acesta este totul despre funcționarea „emitKeypressEvents()” în Node.js.
Concluzie
Linia de citire „ emitKeypressEvents() ” metoda funcționează la evenimentul de la tastatură în timp ce apăsați orice tastă de la tastatură în fluxul care poate fi citit. Această metodă detectează tasta de la tastatură și își emite atributul. Este util în timp ce lucrați în linia de comandă să răspundeți apăsând tasta de la tastatură. Această postare a explicat funcționarea metodei readline „emitKeypressEvents()” în Node.js.