Sisäänrakennettujen moduulien joukossa on ' Lue rivi ” moduuli, joka lukee tiedot luettavasta virrasta rivi riviltä peräkkäin. Tämä moduuli sisältää lisäksi useita menetelmiä, jotka suorittavat erikoistoimintoja, kuten 'createInterface()' luo lukulinjan käyttöliittymän, 'cursorTo()' siirtää kohdistinta, 'emitKeypressEvents()' vastaa näppäimistötapahtumiin ja monet muut.
Tämä kirjoitus osoittaa lukurivin 'emitKeypressEvents()' toiminnan Node.js:ssä.
Kuinka Readline 'emitKeypressEvents()' toimii Node.js:ssä?
' emitKeypressEvents() ” on ”readline”-moduulin ennalta määritetty menetelmä, joka reagoi näppäimistön tapahtumiin ja lähettää ne painetun näppäimen perusteella. Se reagoi kaikkiin näppäimistön näppäinpainalluksiin, kuten Enter, suuntanäppäimet ja monet muut, kun käsitellään komentoriviä.
Syntaksi
'emitkeypressEvents()':n yleinen syntaksi on seuraava:
Lue rivi. emitKeypressEvents ( virta [ , käyttöliittymä ] )
'' -kohdan syntaksissa käytetyt parametrit emitKeypressEvents() ' menetelmä selitetään alla:
- stream: Se edustaa luettavaa virtaa, josta tiedot luetaan.
- käyttöliittymä: Se on valinnainen parametri, joka määrittää jo luodun 'luettavan' virran.
Palautusarvo: 'emitKeypressEvents()' ei palauta mitään.
Käytä nyt 'emitKeypressEvents()' -menetelmää käytännössä.
Esimerkki: 'emitKeypressEvents()' -menetelmän käyttäminen näppäimistötapahtuman käsittelemiseen
Tässä esimerkissä käytetään 'emitKeypressEvents()' -menetelmää painetun näppäimen ja sen attribuuttien tulostamiseen:
konst Lue rivi = vaatia ( 'Lue rivi' ) ;konsoli. Hirsi ( 'Paina mitä tahansa näppäimistön näppäintä' )
Lue rivi. emitKeypressEvents ( käsitellä asiaa. stdin ) ;
jos ( käsitellä asiaa. stdin . isTTY )
käsitellä asiaa. stdin . asetaRawMode ( totta ) ;
käsitellä asiaa. stdin . päällä ( 'näppäinpainallus' , ( str, avain ) => {
jos ( avain. ctrl == totta && avain. nimi == 'c' ) {
käsitellä asiaa. poistu ( )
}
konsoli. Hirsi ( str )
konsoli. Hirsi ( avain )
} )
Yllä olevan koodin selitys on seuraava:
- Ensinnäkin ' vaatia() ” -menetelmä tuo 'readline'-moduulin nykyiseen Node.js-projektiin.
- Seuraavaksi ' console.log() ” näyttää lainatun lauseen tulosnäytössä.
- Sen jälkeen ' emitKeypressEvents() ” mahdollistaa näppäimistön tapahtumien reagoinnin syöttövirran näppäinpainalluksiin.
- Nyt ' process.stdin 'omaisuus on ketjutettu '' .päällä ” näppäimistötapahtuma vastataksesi minkä tahansa näppäimistön näppäimen painamiseen.
- Takaisinsoittonuolifunktion määritelmässä ' jos 'ehto määrittää koodilohkon, joka määrittää ehdon: jos ' ctrl ' -näppäintä painetaan ja se on yhtä suuri kuin ' totta ', jolloin annettu prosessi poistuu käyttämällä ' process.exit() ”menetelmä.
- Lopuksi ' console.log() ' -menetelmä tulostaa ' str ' ja ' avain ” argumentit arvot.
Lähtö
Suorita ' index.js ”-tiedosto käyttämällä alla olevaa komentoa:
solmuindeksi. jsSeuraava tulos näyttää painetun näppäimen ja sen attribuutin. Poistuaksesi prosessista paina ' Ctrl+C ' pikanäppäin:
Siinä kaikki Node.js:n 'emitKeypressEvents()':n toiminnasta.
Johtopäätös
lukurivi ' emitKeypressEvents() ” -menetelmä toimii näppäimistötapahtumassa painettaessa mitä tahansa näppäimistön näppäintä luettavassa streamissa. Tämä menetelmä tunnistaa näppäimistön näppäimen ja lähettää sen attribuutin. Komentorivillä työskennellessä on hyödyllistä vastata painamalla näppäimistön näppäintä. Tämä viesti on selittänyt Readline 'emitKeypressEvents()' -menetelmän toiminnan Node.js:ssä.