Jak zaakceptować dane wejściowe z wiersza poleceń w Node.js?

Jak Zaakceptowac Dane Wejsciowe Z Wiersza Polecen W Node Js



Node.js to dobrze znane, bezpłatne środowisko uruchomieniowe JavaScript o otwartym kodzie źródłowym, które umożliwia użytkownikom wykonywanie kodu JavaScript z pliku lub bezpośrednio z wiersza poleceń. Uruchomienie kodu JavaScript z pliku wymaga zewnętrznego rozszerzenia „. js ”, podczas gdy wiersz poleceń wykonuje kod JavaScript bezpośrednio wiersz po wierszu.

Czasami użytkownik musi skonfigurować informacje podczas uruchamiania aplikacji Node.js z wiersza poleceń za pomocą przycisku „ węzeł ”. W takiej sytuacji użytkownik musi przekazać te informacje bezpośrednio jako dane wejściowe za pomocą polecenia wykonania, zamiast zapisywać je w pliku „. js ' plik.







W tym artykule omówione zostaną wszystkie możliwe metody akceptowania danych wejściowych z wiersza poleceń w Node.js.



Jak zaakceptować dane wejściowe z wiersza poleceń w Node.js?

Node.js oferuje następujące moduły umożliwiające akceptowanie danych wejściowych z wiersza poleceń:



Zacznijmy od „ Czytaj linię moduł.





Warunki wstępne : Zanim przejdziesz do praktycznego wdrożenia jakiejkolwiek metody, najpierw utwórz plik „. js ” o dowolnej nazwie i zapisz w nim cały kod źródłowy. Tutaj stworzyliśmy „ indeks plik .js”.

Metoda 1: Zaakceptuj dane wejściowe z wiersza poleceń za pomocą modułu „readline”.

Czytaj linię ” tworzy interfejs umożliwiający odczytanie danych wejściowych użytkownika z czytelnego strumienia i zwrócenie jego odpowiedzi w postaci wyniku. Jest to moduł wbudowany, dzięki czemu użytkownik może zaimportować go bezpośrednio do aplikacji Node.js bez konieczności jego instalowania za pomocą „ npm ”.



W tym scenariuszu służy do pobrania danych wejściowych z wiersza poleceń, a następnie wydrukowania ich na ekranie wyjściowym. Oto jego praktyczna realizacja:

konst Czytaj linię = wymagać ( 'Czytaj linię' )
konst rl = Czytaj linię. utwórz interfejs ( {
wejście : proces. stdin ,
wyjście : proces. standardowe wyjście
} )
rl. pytanie ( „Najlepsza platforma Do treść techniczna ? ` , strona internetowa => {
rl. pytanie ( `Którą kategorię chciałbyś poznać ? ` , Kategoria => {
konsola. dziennik ( `Strona internetowa : $ { strona internetowa } , Kategoria : $ { Kategoria } ` )
rl. zamknąć ( )
} )
} )

Opis powyższych linii kodu jest następujący:

  • Po pierwsze, „ wymagać ()” importuje „ Czytaj linię ” w bieżącym projekcie Node.js.
  • Następnie „ utwórz interfejs ()” określa metodę „ wejście i wyjście ”strumienie jako obiekt. „ wejście ” strumień wykorzystuje „ proces.stdin ” Właściwość do pobierania danych wejściowych od użytkownika.
  • wyjście ” strumień wykorzystuje „ proces.stdout ” do odczytu strumienia wejściowego i wydrukowania go jako standardowe wyjście danego strumienia wejściowego.
  • Następnie „ rl.pytanie ()” pobiera dane wejściowe od użytkownika. Przekazuje pytanie jako pierwsze, a funkcję wywołania zwrotnego jako drugi argument. Podana funkcja strzałki wywołania zwrotnego pobiera wartości wprowadzone przez użytkownika.
  • W definicji danego „ strona internetowa ” i „ Kategoria ” funkcja strzałki wywołania zwrotnego, „ konsola.log ()” służy do wyświetlania wprowadzonych wartości.
  • Wreszcie „ rl.zamknij ()” zamyka utworzony powyżej interfejs.

Wyjście

Zainicjuj „ indeks .js”, wykonując podane polecenie:

indeks węzła. js

Poniższe dane wyjściowe przedstawiają interfejs readline, który pobiera dane wejściowe użytkownika z wiersza poleceń, a następnie wyświetla wprowadzoną wartość jako standardowe wyjście:

Metoda 2: Zaakceptuj dane wejściowe z wiersza poleceń za pomocą modułu „readline-sync”.

synchronizacja odczytu linii ” to moduł innej firmy, który synchronicznie pobiera informacje związane z zakodowanymi na stałe pytaniami i przechowuje odpowiadające im odpowiedzi na potrzeby przyszłych operacji. Działa jako komunikacja między klientem a serwerem z wiersza poleceń.

Główna różnica między modułami asynchronicznymi i synchronicznymi polega na tym, że „ asynchroniczny ” blokuje wykonanie kodu źródłowego do czasu, aż określone zadanie nie zostanie wykonane, natomiast moduły synchroniczne wykonują kod linia po linii w sposób sekwencyjny.

Zainstaluj moduł „readline-sync”.

The „synchronizacja odczytu linii” moduł nie jest modułem wbudowanym, dlatego należy go zainstalować ręcznie, wykonując poniższe polecenie:

npm zainstaluj readline - synchronizacja

Dane wyjściowe pokazują, że moduł readline-sync został dodany do bieżącego projektu Node.js:

Teraz użyj opcji „ synchronizacja odczytu linii ” praktycznie, postępując zgodnie z podanym fragmentem kodu:

był readlineSync = wymagać ( „synchronizacja odczytu linii” ) ;
był nazwa_emp = readlineSync. pytanie ( 'Imię i nazwisko pracownika: ' ) ;
był jd = readlineSync. pytanie ( 'Opis pracy: ' ) ;
był firma = readlineSync. pytanie ( 'Firma: ' , {
} ) ;
konsola. dziennik ( nazwa_emp + „pracuje jako” + jd + ' W ' + firma ) ;

Wyjaśnienie powyższego kodu jest następujące:

  • Po pierwsze ' synchronizacja odczytu linii ” moduł jest importowany do pliku, a jego obiekt jest zapisywany w nowej zmiennej „ readlineSync ”.
  • Następnie zadawane jest zapytanie za pomocą przycisku „ pytanie ()”, podając ją jako argument.
  • Tę samą procedurę stosuje się przy zadawaniu kolejnych pytań.
  • Następnie „ konsola.log ()” służy do wyświetlenia wprowadzonych wartości wraz z cudzysłowem.

Wyjście

Wykonaj „ indeks plik .js”:

indeks węzła. js

Dane wyjściowe pokazują, że w sposób synchroniczny dane wejściowe od użytkowników zostały pobrane i wyświetlone za pomocą „ synchronizacja odczytu linii moduł:

Metoda 3: Zaakceptuj dane wejściowe z wiersza poleceń za pomocą modułu „podpowiedzi”.

podpowiedź ” to moduł asynchroniczny, który tworzy funkcję monitującą przechowującą dane wejściowe użytkownika jako wartość zmiennej, a następnie pobierającą je jako wynikowy wynik. Nie musi jawnie konfigurować strumienia do odczytu i zapisu, dlatego jest dość łatwy w użyciu w porównaniu do „ Czytaj linię moduł.

Zainstaluj moduł „podpowiedzi”.

podpowiedź ” to także moduł innej firmy, który można łatwo zainstalować za pomocą „ npm ' w ten sposób:

monit o instalację npm -- ratować

W powyższym poleceniu „ -ratować flaga dodaje „ podpowiedź ” do modułu „ pakiet.json ' plik.

Można analizować, że „ podpowiedź ” został dodany do bieżącego projektu Node.js:

Teraz użyj zainstalowanego „ podpowiedź ” praktycznie za pomocą następującego fragmentu kodu:

konst podpowiedź = wymagać ( 'podpowiedź' )
podpowiedź. początek ( )
podpowiedź. Dostawać ( [ 'imię autora' , 'Kategoria' ] , ( błądzić , wynik ) => {
Jeśli ( błądzić ) {
rzucić błądzić

} w przeciwnym razie {
konsola. dziennik ( `$ { wynik. imię autora } działa na $ { wynik. Kategoria } ` )

}
} )

W powyższym bloku kodu:

  • wymagać ()” importuje „ podpowiedź ” do projektu.
  • początek ()” uruchamia monit.
  • Dostawać ()” pobiera dane wejściowe od użytkownika za pośrednictwem wiersza poleceń. Określa nazwy właściwości i funkcję strzałki wywołania zwrotnego jako pierwszy i drugi parametr.
  • Funkcja wywołania zwrotnego z „ błądzić ' I ' wynik ” parametry definiują „ Jeśli inaczej ' oświadczenie.
  • Jeśli wystąpi jakikolwiek błąd, zostanie wyświetlony komunikat „ Jeśli ” zgłosi ten błąd, w przeciwnym razie blok „ w przeciwnym razie ” wyświetli wartości określonych właściwości jako dane wyjściowe.

Wyjście

Uruchom „ indeks plik .js”:

indeks węzła. js

Poniższe dane wyjściowe pobierają dane wejściowe użytkownika na podstawie określonych właściwości, a następnie pobierają ich wartości jako dane wyjściowe:

Metoda 4: Zaakceptuj dane wejściowe z wiersza poleceń za pomocą modułu „inquirer”.

W Node.js „ informujący się ” to łatwy sposób na pobranie danych wejściowych z wiersza poleceń. Zawiera kilka przydatnych metod pobierania danych wejściowych od użytkowników, a następnie zwracania wyników za pomocą „ odpowiedź ” obiekt i „. Następnie ()” wbudowana metoda.

Przydaje się do zadawania użytkownikowi różnych typów pytań za pomocą wiersza poleceń, takich jak lista, opcje, dane wejściowe, pola wyboru i wiele innych. Zapewnia wygodny sposób na interaktywny interfejs wiersza poleceń dla zadań opartych na zapytaniach.

Postępuj zgodnie ze szczegółowym przewodnikiem na stronie „ Pobieranie danych wejściowych z wiersza poleceń za pomocą narzędzia Node.js Inquirer ” w celu praktycznej demonstracji.

Wskazówka: Jak przekazywać argumenty z wiersza poleceń w węźle?

Użytkownik może także przekazywać argumenty z wiersza poleceń. W tym celu „ proces.argv ”Nieruchomość może być użytkowana. „ argumentacja ” to wbudowana właściwość modułu „process”, która służy do przekazywania argumentów z linii poleceń podczas uruchamiania aplikacji Node.js za pomocą przycisku „ węzeł ' Komenda.

Postępuj zgodnie ze szczegółowym przewodnikiem na stronie „ Przekazuj argumenty z wiersza poleceń w Node.js ” w celu praktycznej demonstracji.

Wszystko polega na akceptowaniu danych wejściowych z wiersza poleceń w Node.js.

Wniosek

Aby zaakceptować dane wejściowe z wiersza poleceń, użyj asynchronicznego „ Czytaj linię ” lub synchroniczny „ synchronizacja odczytu linii moduł. Co więcej, można to również wykonać za pomocą „ podpowiedź ' albo ' informujący się moduł. Z wyjątkiem ' synchronizacja z czerwoną linią ”, wszystkie pozostałe moduły są asynchroniczne. W tym artykule omówiono wszystkie możliwe metody akceptowania danych wejściowych z wiersza poleceń w Node.js.