Trabajando con el Módulo Readline
👋 Introducción al módulo 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 solicitudes, recopilar respuestas de usuarios 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 del mundo real, exploremos 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 rlrepresenta 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).
Recolección de la entrada del usuario
Una vez que tenemos una interfaz Readline, podemos utilizarla para recolectar 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; namecontiene la entrada del usuario.
Gestión de la interfaz
Es importante cerrar la interfaz Readline cuando hayamos terminado de utilizarla. Esto se puede hacer usando rl.close().
🔧 Creación de un mensaje interactivo
Ahora que hemos cubierto los conceptos básicos, pongamos en práctica nuestros conocimientos y creemos un adivinador de la fortuna en la línea de comandos. Los usuarios ingresarán sus nombres y la aplicación generará un mensaje de fortuna aleatorio.
Aquí tienes el ejemplo de código del 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, hemos aplicado los conceptos anteriores para crear una aplicación interactiva en la 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.
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
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
Trabajando con el Módulo Readline
Desliza para mostrar el menú
👋 Introducción al módulo 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 solicitudes, recopilar respuestas de usuarios 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 del mundo real, exploremos 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 rlrepresenta 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).
Recolección de la entrada del usuario
Una vez que tenemos una interfaz Readline, podemos utilizarla para recolectar 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; namecontiene la entrada del usuario.
Gestión de la interfaz
Es importante cerrar la interfaz Readline cuando hayamos terminado de utilizarla. Esto se puede hacer usando rl.close().
🔧 Creación de un mensaje interactivo
Ahora que hemos cubierto los conceptos básicos, pongamos en práctica nuestros conocimientos y creemos un adivinador de la fortuna en la línea de comandos. Los usuarios ingresarán sus nombres y la aplicación generará un mensaje de fortuna aleatorio.
Aquí tienes el ejemplo de código del 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, hemos aplicado los conceptos anteriores para crear una aplicación interactiva en la 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.
¡Gracias por tus comentarios!