多个用户提示node.js

我试图查询用户两次(一般不止一次),但一切都打印在一起,第一个响应由两个函数处理。 我相信这与node.js的asynchronous本质有关。 你能指点我的模块,这将为我照顾或提示模块的实施? 谢谢。

var prompt = require('prompt'); prompt.start(); console.log("Enter a number: "); prompt.get(['number'], function(err, result) { if (!isNaN(result.number)) { console.log("You entered a number."); } else { console.log("You did not enter a number."); } }); var prompt2 = require('prompt'); prompt2.start(); console.log("Enter a number again: "); prompt2.get(['number1', 'number2'], function(err, result) { if (Number(result.number1) > Number(result.number2)) console.log("The first input is bigger"); else if (Number(result.number1) == Number(result.number2)) console.log("Both inputs are equal"); else console.log("The second input is bigger"); }); 

我不知道你是否真的需要两个提示实例。 我认为你只需要一个提示就可以实现你想要的,只需要在第一个get的callback中调用第二个。

 var prompt = require('prompt'); prompt.start(); console.log("Enter a number: "); prompt.get(['number'], function(err, result) { if (!isNaN(result.number)) { console.log("You entered a number."); } else { console.log("You did not enter a number."); } console.log("Enter a number again: "); prompt.get(['number'], function(err, result) { if (result.number < 20) console.log("small"); else if (result.number < 50) console.log("medium"); else console.log("large"); }); });