Освоение пользовательского ввода с помощью readline-sync: подробное руководство

Вы устали писать один и тот же старый код, предлагающий пользователям ввести данные в ваши проекты JavaScript? Попрощайтесь с повторяющейся и подверженной ошибкам обработкой ввода, потому что сегодня мы собираемся изучить мощный модуль синхронизации чтения. С помощью readline-sync вы можете легко создавать интерактивные интерфейсы командной строки (CLI), которые позволяют пользователям вводить данные и немедленно получать обратную связь.

Итак, возьмите свой любимый текстовый редактор и давайте углубимся в примеры кода, чтобы продемонстрировать универсальность readline-sync!

  1. Базовый ввод:

    const readlineSync = require('readline-sync');
    const name = readlineSync.question('What is your name? ');
    console.log(`Hello, ${name}!`);

    В этом примере мы используем метод question, чтобы запросить у пользователя имя и сохранить введенные данные в переменной name. Ответ пользователя затем выводится на консоль.

  2. Ввод пароля:

    const readlineSync = require('readline-sync');
    const password = readlineSync.question('Enter your password: ', {
    hideEchoBack: true,
    });
    console.log('Password entered:', password);

    Здесь мы используем параметр hideEchoBack, чтобы скрыть ввод пользователя при вводе пароля.

  3. Ввод числа:

    const readlineSync = require('readline-sync');
    const age = readlineSync.questionInt('How old are you? ');
    console.log(`You are ${age} years old.`);

    Метод questionIntпозволяет нам напрямую получать целочисленное значение от пользователя.

  4. Ввод с множественным выбором:

    const readlineSync = require('readline-sync');
    const colors = ['Red', 'Blue', 'Green'];
    const index = readlineSync.keyInSelect(colors, 'Pick your favorite color: ');
    console.log(`You selected ${colors[index]}.`);

    С помощью метода keyInSelectмы можем предоставить пользователю список вариантов выбора и зафиксировать его выбор.

  5. Проверка ввода:

    const readlineSync = require('readline-sync');
    let email;
    do {
    email = readlineSync.question('Enter a valid email address: ');
    } while (!validateEmail(email));
    console.log('Email address:', email);
    function validateEmail(email) {
    // Add your email validation logic here
    return email.includes('@');
    }

    В этом примере мы демонстрируем, как проверять вводимые пользователем данные с помощью цикла и специальной функции проверки.

Благодаря этим примерам у вас теперь есть прочная основа для использования возможностей синхронизации чтения в ваших проектах JavaScript. Попрощайтесь с утомительной обработкой ввода и наслаждайтесь простотой и интерактивностью этого фантастического модуля.

Итак, чего же вы ждете? Начните интегрировать readline-sync в свои приложения CLI уже сегодня и предоставьте своим пользователям удобный и интерактивный интерфейс!