Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Arbeiten Mit Dem Readline-Modul | Erstellung von Konsolenanwendungen mit Node.js
Backend-Entwicklung mit Node.js und Express.js

bookArbeiten Mit Dem Readline-Modul

👋 Einstieg in Readline

Das Readline-Modul ist ein integriertes Modul in Node.js, das das Einlesen von Benutzereingaben auf interaktive Weise vereinfacht. Es wird häufig verwendet, um Eingabeaufforderungen zu erstellen, Benutzerantworten zu erfassen und interaktive Frage-Antwort-Sitzungen in der Befehlszeilenschnittstelle zu realisieren.

📖 Grundlagen des Readline-Moduls

Bevor ein praxisnahes Beispiel betrachtet wird, werden die grundlegenden Konzepte und Methoden des Readline-Moduls erläutert.

Erstellen einer Readline-Schnittstelle

Um das Readline-Modul zu verwenden, wird in der Regel zunächst eine Readline-Schnittstelle erstellt, die Ein- und Ausgabeströme verwaltet. So wird eine Schnittstelle erstellt:

const readline = require("readline");

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});
  • const rl steht für die Readline-Schnittstelle;
  • readline.createInterface({ input: process.stdin, output: process.stdout }) richtet die Schnittstelle so ein, dass sie von der Standardeingabe (process.stdin) liest und zur Standardausgabe (process.stdout) schreibt.

Erfassen von Benutzereingaben

Sobald eine Readline-Schnittstelle vorhanden ist, kann diese zur Erfassung von Benutzereingaben verwendet werden. Die gebräuchlichste Methode hierfür ist rl.question():

rl.question("Please enter your name: ", (name) => {
  // User input is available as `name`
  console.log(`Hello, ${name}!`);
  rl.close();
});
  • rl.question("Please enter your name: ", (name) => { ... }) fordert den Benutzer mit der angegebenen Nachricht zur Eingabe auf;
  • Die Callback-Funktion (name) => { ... } wird ausgeführt, wenn der Benutzer eine Antwort eingibt;
  • name enthält die Eingabe des Benutzers.

Verwaltung der Schnittstelle

Es ist wichtig, die Readline-Schnittstelle zu schließen, wenn sie nicht mehr benötigt wird. Dies kann mit rl.close() erfolgen.

🔧 Erstellen einer interaktiven Eingabeaufforderung

Nachdem wir die Grundlagen behandelt haben, setzen wir unser Wissen nun ein und erstellen einen unterhaltsamen Kommandozeilen-Wahrsager. Die Benutzer geben ihre Namen ein und die Anwendung generiert eine zufällige Wahrsagungsnachricht.

Hier ist das Codebeispiel aus dem Video:

const readline = require("readline");

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});

const fortunes = [
  "You will find unexpected joy in the little things.",
  "A new opportunity will open doors for you.",
  "Adventure is just around the corner.",
  "Embrace change, and good things will follow.",
  "Patience will bring you great rewards.",
];

rl.question("Welcome to the Fortune Teller! What's your name? ", (name) => {
  const randomIndex = Math.floor(Math.random() * fortunes.length);
  const randomFortune = fortunes[randomIndex];

  console.log(`Hello, ${name}! Your fortune today: ${randomFortune}`);

  rl.close();
});

In diesem Beispiel haben wir die oben genannten Konzepte angewendet, um eine interaktive Kommandozeilenanwendung zu erstellen. Die Benutzer werden zur Eingabe aufgefordert und die Anwendung generiert zufällige Antworten. Das Readline-Modul vereinfacht die Benutzerinteraktion in der Kommandozeilenschnittstelle und eignet sich ideal zum Erstellen interaktiver CLI-Anwendungen.

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 7

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Suggested prompts:

Can you explain how rl.question() works in more detail?

What are some other use cases for the Readline module?

How can I customize the fortune messages in the example?

Awesome!

Completion rate improved to 2.56

bookArbeiten Mit Dem Readline-Modul

Swipe um das Menü anzuzeigen

👋 Einstieg in Readline

Das Readline-Modul ist ein integriertes Modul in Node.js, das das Einlesen von Benutzereingaben auf interaktive Weise vereinfacht. Es wird häufig verwendet, um Eingabeaufforderungen zu erstellen, Benutzerantworten zu erfassen und interaktive Frage-Antwort-Sitzungen in der Befehlszeilenschnittstelle zu realisieren.

📖 Grundlagen des Readline-Moduls

Bevor ein praxisnahes Beispiel betrachtet wird, werden die grundlegenden Konzepte und Methoden des Readline-Moduls erläutert.

Erstellen einer Readline-Schnittstelle

Um das Readline-Modul zu verwenden, wird in der Regel zunächst eine Readline-Schnittstelle erstellt, die Ein- und Ausgabeströme verwaltet. So wird eine Schnittstelle erstellt:

const readline = require("readline");

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});
  • const rl steht für die Readline-Schnittstelle;
  • readline.createInterface({ input: process.stdin, output: process.stdout }) richtet die Schnittstelle so ein, dass sie von der Standardeingabe (process.stdin) liest und zur Standardausgabe (process.stdout) schreibt.

Erfassen von Benutzereingaben

Sobald eine Readline-Schnittstelle vorhanden ist, kann diese zur Erfassung von Benutzereingaben verwendet werden. Die gebräuchlichste Methode hierfür ist rl.question():

rl.question("Please enter your name: ", (name) => {
  // User input is available as `name`
  console.log(`Hello, ${name}!`);
  rl.close();
});
  • rl.question("Please enter your name: ", (name) => { ... }) fordert den Benutzer mit der angegebenen Nachricht zur Eingabe auf;
  • Die Callback-Funktion (name) => { ... } wird ausgeführt, wenn der Benutzer eine Antwort eingibt;
  • name enthält die Eingabe des Benutzers.

Verwaltung der Schnittstelle

Es ist wichtig, die Readline-Schnittstelle zu schließen, wenn sie nicht mehr benötigt wird. Dies kann mit rl.close() erfolgen.

🔧 Erstellen einer interaktiven Eingabeaufforderung

Nachdem wir die Grundlagen behandelt haben, setzen wir unser Wissen nun ein und erstellen einen unterhaltsamen Kommandozeilen-Wahrsager. Die Benutzer geben ihre Namen ein und die Anwendung generiert eine zufällige Wahrsagungsnachricht.

Hier ist das Codebeispiel aus dem Video:

const readline = require("readline");

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});

const fortunes = [
  "You will find unexpected joy in the little things.",
  "A new opportunity will open doors for you.",
  "Adventure is just around the corner.",
  "Embrace change, and good things will follow.",
  "Patience will bring you great rewards.",
];

rl.question("Welcome to the Fortune Teller! What's your name? ", (name) => {
  const randomIndex = Math.floor(Math.random() * fortunes.length);
  const randomFortune = fortunes[randomIndex];

  console.log(`Hello, ${name}! Your fortune today: ${randomFortune}`);

  rl.close();
});

In diesem Beispiel haben wir die oben genannten Konzepte angewendet, um eine interaktive Kommandozeilenanwendung zu erstellen. Die Benutzer werden zur Eingabe aufgefordert und die Anwendung generiert zufällige Antworten. Das Readline-Modul vereinfacht die Benutzerinteraktion in der Kommandozeilenschnittstelle und eignet sich ideal zum Erstellen interaktiver CLI-Anwendungen.

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 7
some-alt