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.

Das Readline-Modul verstehen

Bevor wir uns einem praxisnahen Beispiel widmen, betrachten wir die grundlegenden Konzepte und Methoden, die das Readline-Modul bereitstellt.

Erstellen einer Readline-Schnittstelle

Um das Readline-Modul zu verwenden, wird in der Regel zunächst eine Readline-Schnittstelle erstellt, die 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 auf die Standardausgabe (process.stdout) schreibt.

Erfassen von Benutzereingaben

Sobald eine Readline-Schnittstelle erstellt wurde, kann sie 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, sobald der Benutzer eine Antwort eingibt;
  • name enthält die Eingabe des Benutzers.

Verwaltung der Schnittstelle

Es ist wichtig, die Readline-Schnittstelle nach der Verwendung zu schließen. Dies kann mit rl.close() erfolgen.

Erstellen einer interaktiven Eingabeaufforderung

Nachdem die Grundlagen behandelt wurden, wird das Wissen nun angewendet, um einen unterhaltsamen Kommandozeilen-Wahrsager zu erstellen. 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 wurden die oben genannten Konzepte angewendet, um eine interaktive Kommandozeilenanwendung zu erstellen. 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 zur Erstellung 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

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.

Das Readline-Modul verstehen

Bevor wir uns einem praxisnahen Beispiel widmen, betrachten wir die grundlegenden Konzepte und Methoden, die das Readline-Modul bereitstellt.

Erstellen einer Readline-Schnittstelle

Um das Readline-Modul zu verwenden, wird in der Regel zunächst eine Readline-Schnittstelle erstellt, die 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 auf die Standardausgabe (process.stdout) schreibt.

Erfassen von Benutzereingaben

Sobald eine Readline-Schnittstelle erstellt wurde, kann sie 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, sobald der Benutzer eine Antwort eingibt;
  • name enthält die Eingabe des Benutzers.

Verwaltung der Schnittstelle

Es ist wichtig, die Readline-Schnittstelle nach der Verwendung zu schließen. Dies kann mit rl.close() erfolgen.

Erstellen einer interaktiven Eingabeaufforderung

Nachdem die Grundlagen behandelt wurden, wird das Wissen nun angewendet, um einen unterhaltsamen Kommandozeilen-Wahrsager zu erstellen. 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 wurden die oben genannten Konzepte angewendet, um eine interaktive Kommandozeilenanwendung zu erstellen. 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 zur Erstellung interaktiver CLI-Anwendungen.

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 7
some-alt