Javascript Node js-如何在Node js中等待用户输入时暂停后续代码行的执行
我是node.js新手,正在学习它。我已经编写了一个代码来提示用户从CLI输入超时。问题是,后续代码行在等待用户输入时被执行,而不是暂停。我如何在节点中实现这一点。下面是我的代码Javascript Node js-如何在Node js中等待用户输入时暂停后续代码行的执行,javascript,node.js,user-input,readline,Javascript,Node.js,User Input,Readline,我是node.js新手,正在学习它。我已经编写了一个代码来提示用户从CLI输入超时。问题是,后续代码行在等待用户输入时被执行,而不是暂停。我如何在节点中实现这一点。下面是我的代码 var readline = require('readline'); var rl = readline.createInterface({ input: process.stdin, output: process.stdout }); waitForUserInput = function (
var readline = require('readline');
var rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
waitForUserInput = function (timeout) {
var timer = setTimeout(function () {
console.log("Process Resumed..");
rl.close();
}, timeout);
rl.question("Press Enter to Continue..!!", function () {
console.log("Process Resumed..");
clearTimeout(timer);
rl.close();
});}
方法调用是
waitForUserInput(5000);
现在如果我做一个console.log(“Hello”);输出是
进程暂停。按Enter键继续。。!!
你好
我只希望在用户输入或超时后显示console.log消息 永远不要停止Node.js进程的执行。Node.js构建在
EventLoop
之上。在Node.js中,您的代码应该以异步方式工作——您要求用户输入键盘,并注册一段代码,一旦用户完成输入,就会触发该代码
对于任何类型的命令行输入,我建议使用。您应该创建一个
提示符
,并在then
块中处理用户输入(then
在承诺没有错误的情况下被调用)您不能这样做。相反,使用承诺。你能举个例子吗。