【发布时间】:2016-06-27 19:13:57
【问题描述】:
我是 node.js 的新手,并且正在学习它。我编写了一个代码来提示来自 CLI 的用户输入超时。问题是,随后的代码行在等待用户输入时被执行并且没有暂停。我如何在节点中实现这一点。下面是我的代码
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 消息。
【问题讨论】:
-
你不能那样做。相反,请使用承诺。
-
你能举个例子吗?
标签: javascript node.js user-input readline