Kuidas Readline emitKeypressEvents() Node.js-is töötab?

Kuidas Readline Emitkeypressevents Node Js Is Tootab



Node.js on tasuta avatud lähtekoodiga tuntud JavaScripti käituskeskkond dünaamiliste ja hästi skaleeritavate veebirakenduste loomiseks. See saavutab selle funktsiooni moodulsüsteemi abil. ' moodul ” süsteem on rakenduse ehitusplokk, mis võimaldab arendajatel vajadusel koodi uuesti kasutada. See on jagatud kolme põhikategooriasse: 'sisseehitatud', 'kohalikud' ja 'kolmanda osapoole' moodulid.

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. js

Jä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.