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. jsNā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.