Sisseehitatud moodulite hulgas on ' readline ” moodul, mis loeb loetavast voost andmeid rida-realt järjestikku. See moodul sisaldab lisaks mitmeid meetodeid, mis täidavad erifunktsioone, näiteks 'createInterface()' loob lugemisliini liidese, 'cursorTo()' liigutab kursorit, 'emitKeypressEvents()' reageerib klaviatuuri sündmustele ja paljud teised.
See kirjutis demonstreerib lugemisrea “emitKeypressEvents()” tööd failis Node.js.
Kuidas Readline'i 'emitKeypressEvents()' Node.js-is töötab?
' emitKeypressEvents() ” on 'readline' mooduli eelmääratletud meetod, mis reageerib klaviatuuri sündmustele ja edastab need vajutatud klahvi alusel. See reageerib käsurealt käsitledes kõikidele klaviatuuri klahvivajutustele, nagu Enter, suunaklahvid ja paljud teised.
Süntaks
Funktsiooni 'emitkeypressEvents()' üldistatud süntaks on järgmine:
readline. emitKeypressEvents ( oja [ , liides ] )
'' süntaksis kasutatavad parameetrid emitKeypressEvents() ” meetodit selgitatakse allpool:
- voog: See tähistab loetavat voogu, millest andmeid loetakse.
- liides: See on valikuline parameeter, mis määrab juba loodud 'loetava' voo.
Tagastusväärtus: 'emitKeypressEvents()' ei tagasta midagi.
Nüüd kasutage meetodit 'emitKeypressEvents()' praktiliselt.
Näide: meetodi „emitKeypressEvents()” rakendamine klaviatuurisündmuse käsitlemiseks
See näide rakendab vajutatud klahvi ja selle atribuutide printimiseks meetodit 'emitKeypressEvents()'.
konst readline = nõuda ( 'readline' ) ;konsool. logi ( 'Vajutage mis tahes klaviatuuri klahvi' )
readline. emitKeypressEvents ( protsessi. stdin ) ;
kui ( protsessi. stdin . isTTY )
protsessi. stdin . määra RawMode ( tõsi ) ;
protsessi. stdin . peal ( 'klahvivajutus' , ( str, võti ) => {
kui ( võti. ctrl == tõsi && võti. nimi == 'c' ) {
protsessi. väljuda ( )
}
konsool. logi ( str )
konsool. logi ( võti )
} )
Ülaltoodud koodi selgitus on järgmine:
- Esiteks, ' nõua () ” meetod impordib praegusesse Node.js projekti 'readline' mooduli.
- Järgmiseks ' console.log() ” kuvab väljundekraanil tsiteeritud avalduse.
- Pärast seda ' emitKeypressEvents() ” võimaldab klaviatuuri sündmustel reageerida sisestusvoo mis tahes klahvivajutusega.
- Nüüd, ' protsess.stdin ' atribuut on ühendatud ' .peal ” klaviatuurisündmus, mis reageerib mis tahes klaviatuuriklahvi vajutamisele.
- Tagasihelistamisnoole funktsiooni määratluses on „ kui ' tingimus määratleb koodiploki, mis määrab tingimuse: kui ' ctrl ” klahvi vajutatakse ja see võrdub „ tõsi ', siis antud protsess väljub, kasutades ' process.exit() ” meetod.
- Lõpuks, ' console.log() ' meetod prindib ' str ' ja ' võti ” argumentide väärtused.
Väljund
Käivitage ' index.js ” faili, kasutades alltoodud käsku:
sõlme indeks. jsJärgmine väljund kuvab vajutatud klahvi koos selle atribuudiga. Protsessist väljumiseks vajutage nuppu ' Ctrl+C ” kiirklahv:
See kõik puudutab funktsiooni „emitKeypressEvents()” tööd failis Node.js.
Järeldus
Lugemisliin ' emitKeypressEvents() ” meetod töötab klaviatuurisündmusel, kui vajutate loetavasse voogu mis tahes klaviatuuriklahvi. See meetod tuvastab klaviatuuriklahvi ja väljastab selle atribuudi. Käsurea kasutamisel on kasulik vastata klaviatuuriklahvi vajutamisega. See postitus on selgitanud Readline'i meetodi 'emitKeypressEvents()' tööd failis Node.js.