NodeJs readline - Терминал выводит буквы дважды [закрыт]

Это сработало для меня (запуск после перезагрузки), он начался с того места, где обновление было прервано.

sudo dpkg --configure -a
131
задан 17 July 2018 в 18:21

4 ответа

Он выполняет это только в интерактивном терминале, когда вы запускаете его как скрипт с node junk.js. Причина в том, что вы захватываете stdin и записываете на stdout, поэтому он регистрируется как печать дважды в интерактивном терминале.

0
ответ дан 18 July 2018 в 17:20

Он выполняет это только в интерактивном терминале, когда вы запускаете его как скрипт с node junk.js. Причина в том, что вы захватываете stdin и записываете на stdout, поэтому он регистрируется как печать дважды в интерактивном терминале.

0
ответ дан 20 July 2018 в 16:43
  • 1
    Как мы избегаем такого поведения? Я хотел бы, чтобы он работал в интерактивном окне и позволял пользователям вводить команды. – F.H. 17 July 2018 в 22:03
  • 2
    Используйте другую библиотеку. Простой поиск google появляется npmjs.com/package/prompt – RobotHumans 18 July 2018 в 00:03
  • 3
    Я уже сделал это и получил ту же проблему с подсказкой. – F.H. 18 July 2018 в 01:11
  • 4
    Очевидно, для обоих библиотек нужен интерактивный переключатель if, которого нет. У вас не проблема с python. В верхней части, с подсказкой, он только удваивает ваши клавиши ввода. если вы используете стрелки вниз и вверх, он дает правильный рендер. – RobotHumans 18 July 2018 в 01:39
  • 5
    Так что нет решения такого простого требования? Как другие обрабатывают пользовательские входы? – F.H. 18 July 2018 в 16:31

Он выполняет это только в интерактивном терминале, когда вы запускаете его как скрипт с node junk.js. Причина в том, что вы захватываете stdin и записываете на stdout, поэтому он регистрируется как печать дважды в интерактивном терминале.

0
ответ дан 20 July 2018 в 16:53
  • 1
    Как мы избегаем такого поведения? Я хотел бы, чтобы он работал в интерактивном окне и позволял пользователям вводить команды. – F.H. 17 July 2018 в 22:03
  • 2
    Используйте другую библиотеку. Простой поиск google появляется npmjs.com/package/prompt – RobotHumans 18 July 2018 в 00:03
  • 3
    Я уже сделал это и получил ту же проблему с подсказкой. – F.H. 18 July 2018 в 01:11
  • 4
    Очевидно, для обоих библиотек нужен интерактивный переключатель if, которого нет. У вас не проблема с python. В верхней части, с подсказкой, он только удваивает ваши клавиши ввода. если вы используете стрелки вниз и вверх, он дает правильный рендер. – RobotHumans 18 July 2018 в 01:39
  • 5
    Так что нет решения такого простого требования? Как другие обрабатывают пользовательские входы? – F.H. 18 July 2018 в 16:31

Он выполняет это только в интерактивном терминале, когда вы запускаете его как скрипт с node junk.js. Причина в том, что вы захватываете stdin и записываете на stdout, поэтому он регистрируется как печать дважды в интерактивном терминале.

0
ответ дан 23 July 2018 в 10:08
  • 1
    Как мы избегаем такого поведения? Я хотел бы, чтобы он работал в интерактивном окне и позволял пользователям вводить команды. – F.H. 17 July 2018 в 22:03
  • 2
    Используйте другую библиотеку. Простой поиск google появляется npmjs.com/package/prompt – RobotHumans 18 July 2018 в 00:03
  • 3
    Я уже сделал это и получил ту же проблему с подсказкой. – F.H. 18 July 2018 в 01:11
  • 4
    Очевидно, для обоих библиотек нужен интерактивный переключатель if, которого нет. У вас не проблема с python. В верхней части, с подсказкой, он только удваивает ваши клавиши ввода. если вы используете стрелки вниз и вверх, он дает правильный рендер. – RobotHumans 18 July 2018 в 01:39
  • 5
    Так что нет решения такого простого требования? Как другие обрабатывают пользовательские входы? – F.H. 18 July 2018 в 16:31

Другие вопросы по тегам:

Похожие вопросы: