Есть ли в node.js что-то наподобие input?

Мне нужно запросить строковые данные у пользователя, которые затем будут помещены в глобальную переменную для дальнейшей работы с ней. Как это реализуется?


Ответы (2 шт):

Автор решения: Pavel Seletkov

Если нужно прям взаимодействовать в форме диалога через консоль , как вариант запускать приложение с аргументами (например node test.js hello=world) и при старте приложения считывать параметры и сохранять

const readline = require('readline');

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

let GlobalAnswer = 'nothing';

rl.question('What do you think of Node.js? ', (answer) => {
  if (!answer) {
      answer = GlobalAnswer;
  }
  // TODO: Log the answer in a database
  console.log(`Thank you for your valuable feedback: ${answer}`);

  rl.close();
});
→ Ссылка
Автор решения: Vadim

Есть read_line пакет

npm i readline

(async()=>{
    const readline = require('readline');
    const rl = readline.createInterface({input: process.stdin, output: process.stdout});
    const key = await new Promise((r)=>{rl.question('Type: ', r)});
    console.log(key);
})();
→ Ссылка