Node.js'de Komut Satırından Giriş Nasıl Kabul Edilir?

Node Js De Komut Satirindan Giris Nasil Kabul Edilir



Node.js, kullanıcıların JavaScript kodunu bir dosyadan veya doğrudan komut satırından yürütmesine olanak tanıyan, iyi bilinen, açık kaynaklı, ücretsiz bir JavaScript çalışma zamanı ortamıdır. Bir dosyadan JavaScript kodunu çalıştırmak için harici bir “.txt” dosyası gerekir. js ” file komutunu çalıştırırken komut satırı JavaScript kodunu doğrudan satır satır yürütür.

Bazen kullanıcının Node.js uygulamasını komut satırından başlatırken “ düğüm ”. Böyle bir durumda kullanıcının bu bilgiyi “.dll” dosyasına yazmak yerine doğrudan yürütme komutuyla girdi olarak iletmesi gerekir. js ' dosya.







Bu yazıda Node.js'de komut satırından girdi kabul etmeye yönelik tüm olası yöntemler tartışılacaktır.



Node.js'de Komut Satırından Giriş Nasıl Kabul Edilir?

Node.js, komut satırından girişi kabul etmek için aşağıdaki modülleri sunar:



Şununla başlayalım: okuma satırı ” modülü.





Önkoşullar : Herhangi bir yöntemin pratik uygulamasına geçmeden önce öncelikle bir “. js ” herhangi bir isimdeki dosyaya gidin ve tüm kaynak kodunu ona yazın. Burada bir “ dizin .js” dosyası.

Yöntem 1: “Readline” Modülünü Kullanarak Komut Satırından Girişi Kabul Etme

okuma satırı ” modülü, okunabilir akıştan kullanıcı girişini okumak ve yanıtını sonuç çıktı olarak döndürmek için bir arayüz oluşturur. Yerleşik bir modüldür, böylece kullanıcı onu “” kullanarak kurmadan doğrudan Node.js uygulamasına aktarabilir. npm ”.



Bu senaryoda, girdiyi komut satırından almak ve ardından çıktı ekranına yazdırmak için kullanılır. İşte pratik uygulaması:

yapı okuma satırı = gerekmek ( 'okuma satırı' )
yapı rl = okuma satırı. Arayüz oluştur ( {
giriş : işlem. standart ,
çıktı : işlem. stdout
} )
rl. soru ( `En iyi platform için teknik içerik ? ' , İnternet sitesi => {
rl. soru ( `Hangi kategoriyi keşfetmek istiyorsunuz? ? ' , kategori => {
konsol. kayıt ( `Web sitesi : $ { İnternet sitesi } , Kategori : $ { kategori } ' )
rl. kapalı ( )
} )
} )

Yukarıdaki kod satırlarının açıklaması şu şekildedir:

  • Öncelikle “ gerekmek ()” yöntemi “ okuma satırı ” Mevcut Node.js projesindeki modül.
  • Daha sonra “ Arayüz oluştur ()” yöntemi “ giriş ve çıkış ” bir nesne olarak yayınlanır. “ giriş ” akışı “'yi kullanır süreç.stdin Kullanıcıdan girdi almak için kullanılan özellik.
  • çıktı ” akışı “'yi kullanır süreç.stdout ” Giriş akışını okumak ve onu verilen giriş akışının standart çıktısı olarak yazdırmak için kullanılan özellik.
  • Bundan sonra “ rl.soru ()” yöntemi kullanıcıdan girdi alır. İlk olarak soruyu ve ikinci argüman olarak geri çağırma işlevini iletir. Verilen geri arama oku işlevi, kullanıcı tarafından girilen değerleri alır.
  • Verilen tanımında “ İnternet sitesi ', ve ' kategori ” geri arama oku işlevi, “ konsol.log Girilen değerlerin görüntülenmesi için ()” yöntemi kullanılır.
  • Son olarak “ rl.close ()” yöntemi yukarıda oluşturulan arayüzü kapatır.

Çıktı

dizin Sağlanan komutu yürüterek .js” dosyasını çalıştırın:

düğüm indeksi. js

Aşağıdaki çıktı, kullanıcı girdisini komut satırından alan ve girilen değeri standart çıktı olarak görüntüleyen bir okuma satırı arayüzünü gösterir:

Yöntem 2: “Readline-sync” Modülünü Kullanarak Komut Satırından Girişi Kabul Etme

okuma satırı senkronizasyonu ”, sabit kodlanmış sorularla ilgili bilgileri eşzamanlı olarak alan ve gelecekteki işlemler için ilgili yanıtları saklayan üçüncü taraf modüldür. İstemci ile sunucu arasında komut satırından bir iletişim görevi görür.

Asenkron ve senkron modüller arasındaki temel fark, “ asenkron ”, belirtilen görev yerine getirilinceye kadar kaynak kodunun yürütülmesini engellerken, senkronize modüller kodu satır satır sırayla yürütür.

“Readline-sync” Modülünü yükleyin

“okuma satırı senkronizasyonu” modül yerleşik bir modül değildir, bu nedenle aşağıdaki komutu çalıştırarak manuel olarak kurulması gerekir:

npm okuma satırını yükle - senkronizasyon

Çıktı, readline-sync modülünün mevcut Node.js projesine eklendiğini gösterir:

Şimdi “ okuma satırı senkronizasyonu ” modülünü verilen kod parçasını pratik olarak takip ederek:

öyleydi ReadlineSync = gerekmek ( 'okuma satırı senkronizasyonu' ) ;
öyleydi empName = readlineSync. soru ( 'Çalışan Adı: ' ) ;
öyleydi jd = readlineSync. soru ( 'İş tanımı: ' ) ;
öyleydi şirket = readlineSync. soru ( 'Şirket: ' , {
} ) ;
konsol. kayıt ( empName + 'olarak çalışır' + jd + ' içinde ' + şirket ) ;

Yukarıdaki kodun açıklaması şu şekildedir:

  • İlk önce ' okuma satırı senkronizasyonu “modül dosyanın içine aktarılır ve nesnesi yeni bir değişkende saklanır” ReadlineSync ”.
  • Daha sonra “” yardımıyla sorgu sorulur. soru ()” yöntemini argüman olarak belirterek kullanabilirsiniz.
  • Sonraki soruların sorulmasında da aynı prosedür uygulanır.
  • Bundan sonra “ konsol.log ()” yöntemi, girilen değerleri alıntılanan dizeyle birlikte görüntülemek için kullanılır.

Çıktı

“” işlemini yürütün dizin .js” dosyası:

düğüm indeksi. js

Çıktı, senkronize bir şekilde kullanıcılardan girdinin alındığını ve 'kullanılarak görüntülendiğini' gösterir. okuma satırı senkronizasyonu ” modülü:

Yöntem 3: “Prompt” Modülünü Kullanarak Komut Satırından Girişi Kabul Etme

çabuk ”, kullanıcı girişini değişkenin değeri olarak depolamak ve daha sonra bunu sonuç çıktısı olarak almak için bir komut istemi işlevi oluşturan eşzamansız bir modüldür. Okunabilir ve yazılabilir akışı açıkça yapılandırmasına gerek yoktur, bu nedenle kullanımı '' ile karşılaştırıldığında oldukça kolaydır. okuma satırı ” modülü.

“İstem” Modülünü yükleyin

çabuk ” aynı zamanda “ yardımıyla kolayca kurulabilen üçüncü taraf bir modüldür. npm ' Böylece:

npm kurulum istemi -- kaydetmek

Yukarıdaki komutta “ -kaydetmek ” bayrağı şunu ekler: çabuk ” modülünü “ paket.json ' dosya.

Şu şekilde analiz edilebilir: ' çabuk ” mevcut Node.js projesine eklendi:

Şimdi, kurulu olanı kullanın “ çabuk ” modülünü aşağıdaki kod parçası yardımıyla pratik olarak kullanabilirsiniz:

yapı çabuk = gerekmek ( 'çabuk' )
çabuk. başlangıç ( )
çabuk. elde etmek ( [ 'yazarAdı' , 'Kategori' ] , ( hata , sonuç ) => {
eğer ( hata ) {
fırlatmak hata

} başka {
konsol. kayıt ( '$ { sonuç. yazarAdı } $ üzerinde çalışıyor { sonuç. Kategori } ' )

}
} )

Yukarıda belirtilen kod bloğunda:

  • gerekmek ()” yöntemi “ çabuk ” modülünü projeye ekleyin.
  • başlangıç ()” yöntemi istemi başlatır.
  • elde etmek ()” yöntemi kullanıcıdan komut satırı aracılığıyla girdi alır. Birinci ve ikinci parametreler olarak özellik adlarını ve geri çağırma oku işlevini belirtir.
  • “ ile geri arama işlevi hata ' Ve ' sonuç ” parametreleri bir “ if-else ' ifade.
  • Herhangi bir tür hata meydana gelirse, o zaman “ eğer ” bloğu bu hatayı atacaktır, aksi halde “ başka ” bloğu belirtilen özelliklerin değerlerini çıktı olarak gösterecektir.

Çıktı

dizin .js” dosyası:

düğüm indeksi. js

Aşağıdaki çıktı, belirtilen özelliklere göre kullanıcı girdisini alır ve ardından değerlerini çıktı olarak alır:

Yöntem 4: “Soruşturucu” Modülünü Kullanarak Komut Satırından Girişi Kabul Etme

Node.js'de “ araştırmacı ”, girişi komut satırından almanın kolay bir yoludur. Kullanıcılardan girdi almak ve ardından çıktıyı '' kullanarak geri döndürmek için çeşitli yararlı yöntemlerle birlikte gelir. cevap ” nesnesi ve “. Daha sonra ()” yerleşik yöntemi.

Liste, seçenekler, giriş, onay kutuları ve çok daha fazlası gibi komut satırı aracılığıyla kullanıcıya farklı türde sorular sormak için kullanışlıdır. Sorgu tabanlı görevler için komut satırı arayüzü arayüzünü etkileşimli hale getirmenin kullanışlı bir yolunu sağlar.

“ ile ilgili ayrıntılı kılavuzu izleyin Node.js Inquirer'ı Kullanarak Komut Satırından Giriş Alın ”Pratik gösteri için.

İpucu: Düğümde Komut Satırından Bağımsız Değişkenler Nasıl Aktarılır?

Kullanıcı ayrıca argümanları komut satırından da iletebilir. Bu amaçla “ süreç.argv ” özelliği kullanılabilir. “ argv ”, Node.js uygulamasını çalıştırırken komut satırından argümanları iletmek için kullanılan “process” modülünün yerleşik özelliğidir. düğüm ' emretmek.

“ ile ilgili ayrıntılı kılavuzu izleyin Node.js'de Komut Satırından Bağımsız Değişkenleri Aktarma ”Pratik gösteri için.

Bu tamamen Node.js'deki komut satırından girdi kabul etmekle ilgilidir.

Çözüm

Girişi komut satırından kabul etmek için eşzamansız ' okuma satırı ”veya senkronize“ okuma satırı senkronizasyonu ” modülü. Üstelik “” aracılığıyla da gerçekleştirilebilir. çabuk ' ya da ' araştırmacı ” modülü. “ hariç kırmızı çizgi senkronizasyonu ” modülünde, geri kalan tüm modüller eşzamansızdır. Bu yazıda Node.js'de komut satırından girdi kabul etmeye yönelik tüm olası yöntemler tartışılmıştır.