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

时间:2014-03-04 17:59:32

标签: javascript node.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删除文本,则提示会向下移动一行。有没有办法阻止这种情况发生?

1 个答案:

答案 0 :(得分:3)

进一步调查后,只有在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);
});