返回/换行后隐藏控制台的用户输入

raz*_*xan 3 javascript terminal stdout readline node.js

我想要做的是隐藏/擦除所有用户输入后从 nodejs 控制台应用程序输入,这样当用户插入一些文本然后输入 enter 时,他将无法读取他刚刚在控制台中输入的内容不再(所以基本上在输入后立即删除该行)。

这应该很容易实现,但我不知道该怎么做=)。

先感谢您

编辑:假设我们有这个代码:

const readline = require('readline')

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

rl.question('How ya doin?\n', input => {
    console.log('seems like you\'r doing ' + input.toString())  
})
Run Code Online (Sandbox Code Playgroud)
  • 该应用程序提示一个问题
  • 用户回答“很好”(用户按 Enter 后,此行不应再出现)
  • 该程序说“似乎......很好”

输出

小智 6

看起来 readline 已经可以为你处理这个了..

const readline = require('readline')

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

rl.question('How ya doin?\n', input => {
    readline.moveCursor(process.stdout, 0,-1)
    console.log('seems like you\'r doing ' + input.toString())  
})
Run Code Online (Sandbox Code Playgroud)