Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Робота з Модулем Readline | Створення Консольних Застосунків з Node.js
Quizzes & Challenges
Quizzes
Challenges
/
Розробка бекенду з Node.js та Express.js

bookРобота з Модулем 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-застосунків.

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 7

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

bookРобота з Модулем 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-застосунків.

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 7
some-alt