节点.JS Readline 在退格键上打印一个新行



我有一些代码可以在一些用户输入中读取,没有什么花哨的:

var rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});
rl.question('Please enter some text:n', function(answer){
    rl.pause();
    console.log(answer);
});

遗憾的是,当用户被提示输入时,如果他们输入错误并尝试使用BACKSPACE删除文本,则提示将向下移动一行。有没有办法阻止这种情况发生?

在进一步研究之后,似乎只有在rl.question()提示符包含n时才会发生。如果提示不包含换行符,则可以安全地将文本退格。

var rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});
rl.question('Please enter some text: ', function(answer){
    rl.pause();
    console.log(answer);
});

最新更新