Робота з модулем Readline
👋 Початок роботи з Readline
Модуль Readline — це вбудований модуль у Node.js, який спрощує зчитування введення користувача в інтерактивному режимі. Його часто використовують для створення підказок, збору відповідей користувача та побудови інтерактивних сесій запитань і відповідей у командному рядку.
📖 Огляд модуля Readline
Перш ніж перейти до практичного прикладу, розглянемо основні поняття та методи, які надає модуль Readline.
Створення інтерфейсу Readline
Щоб використовувати модуль Readline, зазвичай починають зі створення інтерфейсу Readline, який керує потоками введення та виведення. Ось як створити інтерфейс:
const readline = require("readline");
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
const rl— представляє інтерфейс Readline;readline.createInterface({ input: process.stdin, output: process.stdout })налаштовує інтерфейс для читання зі стандартного введення (process.stdin) та запису у стандартний вивід (process.stdout).
Збір введення користувача
Після створення інтерфейсу Readline його можна використовувати для збору введення користувача. Найпоширеніший метод для цього — 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) => { ... })виводить користувачу запит із вказаним повідомленням;- Функція зворотного виклику
(name) => { ... }виконується після введення відповіді користувачем; nameмістить введене користувачем значення.
Керування інтерфейсом
Важливо закривати інтерфейс Readline після завершення роботи з ним. Це можна зробити за допомогою rl.close().
🔧 Створення інтерактивного запиту
Тепер, коли ми розглянули основи, застосуємо наші знання на практиці та створимо цікаву консольну програму-провісника. Користувачі вводитимуть свої імена, а застосунок генеруватиме випадкове передбачення.
Ось приклад коду з відео:
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();
});
У цьому прикладі застосовано розглянуті концепції для створення інтерактивної консольної програми. Користувачам пропонується ввести дані, а застосунок генерує випадкові відповіді. Модуль Readline спрощує взаємодію з користувачем у командному рядку, що робить його ідеальним для створення інтерактивних CLI-застосунків.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
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
Робота з модулем Readline
Свайпніть щоб показати меню
👋 Початок роботи з Readline
Модуль Readline — це вбудований модуль у Node.js, який спрощує зчитування введення користувача в інтерактивному режимі. Його часто використовують для створення підказок, збору відповідей користувача та побудови інтерактивних сесій запитань і відповідей у командному рядку.
📖 Огляд модуля Readline
Перш ніж перейти до практичного прикладу, розглянемо основні поняття та методи, які надає модуль Readline.
Створення інтерфейсу Readline
Щоб використовувати модуль Readline, зазвичай починають зі створення інтерфейсу Readline, який керує потоками введення та виведення. Ось як створити інтерфейс:
const readline = require("readline");
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
const rl— представляє інтерфейс Readline;readline.createInterface({ input: process.stdin, output: process.stdout })налаштовує інтерфейс для читання зі стандартного введення (process.stdin) та запису у стандартний вивід (process.stdout).
Збір введення користувача
Після створення інтерфейсу Readline його можна використовувати для збору введення користувача. Найпоширеніший метод для цього — 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) => { ... })виводить користувачу запит із вказаним повідомленням;- Функція зворотного виклику
(name) => { ... }виконується після введення відповіді користувачем; nameмістить введене користувачем значення.
Керування інтерфейсом
Важливо закривати інтерфейс Readline після завершення роботи з ним. Це можна зробити за допомогою rl.close().
🔧 Створення інтерактивного запиту
Тепер, коли ми розглянули основи, застосуємо наші знання на практиці та створимо цікаву консольну програму-провісника. Користувачі вводитимуть свої імена, а застосунок генеруватиме випадкове передбачення.
Ось приклад коду з відео:
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();
});
У цьому прикладі застосовано розглянуті концепції для створення інтерактивної консольної програми. Користувачам пропонується ввести дані, а застосунок генерує випадкові відповіді. Модуль Readline спрощує взаємодію з користувачем у командному рядку, що робить його ідеальним для створення інтерактивних CLI-застосунків.
Дякуємо за ваш відгук!