使用readline.question()
时,您总是在用户输入的末尾得到换行符。如何删除该换行符或不从头开始输出?
例如,考虑以下代码:
const readline = require("readline");
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
terminal: true
});
rl.question("Question: ", line => {
console.log("?");
});
预期:
Question: [User question]?
实际:
Question: [User question]
?
这会要求用户输入一些文本,并在用户输入的末尾添加一个?
标记。但是?
标记在下一行。
答案 0 :(得分:1)
问号应该是rl.question()
第一个参数中字符串的一部分。 Readline docs中的示例:
rl.question('What is your favorite food? ', (answer) => {
console.log(`Oh, so your favorite food is ${answer}`);
});
如果您要使用的变量不包含?
符号,则可以执行以下操作:
rl.question(thisVar + '?', line => {
// do whatever
});