Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Trabajando con el Módulo Readline | Creación de Aplicaciones de Consola con Node.js
Desarrollo Backend con Node.js y Express.js

bookTrabajando con el Módulo Readline

Introducción a Readline

El módulo Readline es un módulo incorporado en Node.js que simplifica la lectura de entradas del usuario de manera interactiva. Se utiliza frecuentemente para crear indicaciones, recopilar respuestas del usuario y construir sesiones interactivas de preguntas y respuestas en la interfaz de línea de comandos.

Comprensión del módulo Readline

Antes de profundizar en un ejemplo práctico, es importante explorar los conceptos y métodos principales que proporciona el módulo Readline.

Creación de una interfaz Readline

Para utilizar el módulo Readline, normalmente se comienza creando una interfaz Readline que gestiona los flujos de entrada y salida. Así es como se crea una interfaz:

const readline = require("readline");

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});
  • const rl representa la interfaz Readline;
  • readline.createInterface({ input: process.stdin, output: process.stdout }) configura la interfaz para leer desde la entrada estándar (process.stdin) y escribir en la salida estándar (process.stdout).

Recopilación de entrada del usuario

Una vez que tenemos una interfaz de Readline, podemos utilizarla para recopilar la entrada del usuario. El método más común para este propósito es 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) => { ... }) solicita al usuario una entrada con el mensaje proporcionado;
  • La función de devolución de llamada (name) => { ... } se ejecuta cuando el usuario introduce su respuesta;
  • name contiene la entrada del usuario.

Gestión de la interfaz

Es importante cerrar la interfaz de Readline cuando hayamos terminado de usarla. Podemos hacerlo utilizando rl.close().

Creación de un mensaje interactivo

Ahora que hemos cubierto los conceptos básicos, pongamos en práctica nuestros conocimientos y creemos una divertida aplicación de adivinador en la línea de comandos. Los usuarios introducirán sus nombres y la aplicación generará un mensaje de fortuna aleatorio.

Aquí tienes el ejemplo de código mostrado en el 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();
});

En este ejemplo, se han aplicado los conceptos anteriores para crear una aplicación interactiva de línea de comandos. Se solicita la entrada del usuario y la aplicación genera respuestas aleatorias. El módulo Readline simplifica la interacción con el usuario en la interfaz de línea de comandos, lo que lo hace ideal para crear aplicaciones CLI interactivas.

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 7

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 2.56

bookTrabajando con el Módulo Readline

Desliza para mostrar el menú

Introducción a Readline

El módulo Readline es un módulo incorporado en Node.js que simplifica la lectura de entradas del usuario de manera interactiva. Se utiliza frecuentemente para crear indicaciones, recopilar respuestas del usuario y construir sesiones interactivas de preguntas y respuestas en la interfaz de línea de comandos.

Comprensión del módulo Readline

Antes de profundizar en un ejemplo práctico, es importante explorar los conceptos y métodos principales que proporciona el módulo Readline.

Creación de una interfaz Readline

Para utilizar el módulo Readline, normalmente se comienza creando una interfaz Readline que gestiona los flujos de entrada y salida. Así es como se crea una interfaz:

const readline = require("readline");

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});
  • const rl representa la interfaz Readline;
  • readline.createInterface({ input: process.stdin, output: process.stdout }) configura la interfaz para leer desde la entrada estándar (process.stdin) y escribir en la salida estándar (process.stdout).

Recopilación de entrada del usuario

Una vez que tenemos una interfaz de Readline, podemos utilizarla para recopilar la entrada del usuario. El método más común para este propósito es 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) => { ... }) solicita al usuario una entrada con el mensaje proporcionado;
  • La función de devolución de llamada (name) => { ... } se ejecuta cuando el usuario introduce su respuesta;
  • name contiene la entrada del usuario.

Gestión de la interfaz

Es importante cerrar la interfaz de Readline cuando hayamos terminado de usarla. Podemos hacerlo utilizando rl.close().

Creación de un mensaje interactivo

Ahora que hemos cubierto los conceptos básicos, pongamos en práctica nuestros conocimientos y creemos una divertida aplicación de adivinador en la línea de comandos. Los usuarios introducirán sus nombres y la aplicación generará un mensaje de fortuna aleatorio.

Aquí tienes el ejemplo de código mostrado en el 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();
});

En este ejemplo, se han aplicado los conceptos anteriores para crear una aplicación interactiva de línea de comandos. Se solicita la entrada del usuario y la aplicación genera respuestas aleatorias. El módulo Readline simplifica la interacción con el usuario en la interfaz de línea de comandos, lo que lo hace ideal para crear aplicaciones CLI interactivas.

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 7
some-alt