Javascript Commander.js:脚本未等待用户输入

Javascript Commander.js:脚本未等待用户输入,javascript,node.js,command-line-tool,Javascript,Node.js,Command Line Tool,我刚刚开始使用node.js和commander.js,所以这可能是一个愚蠢的问题 因此,我试图制作一个命令行工具,在这里我需要向用户询问一些信息。我试图使用它似乎很简单。 问题是,当我运行脚本时,它不会等待用户键入答案并执行所有脚本。 我怎样才能做到这一点 下面是我如何组织代码的: #!/usr/bin/env node var program = require('commander'); program .version('0.0.1') .option('-c, --

我刚刚开始使用node.js和commander.js,所以这可能是一个愚蠢的问题

因此,我试图制作一个命令行工具,在这里我需要向用户询问一些信息。我试图使用它似乎很简单。 问题是,当我运行脚本时,它不会等待用户键入答案并执行所有脚本。 我怎样才能做到这一点

下面是我如何组织代码的:

#!/usr/bin/env node

var program = require('commander');

program
    .version('0.0.1')
    .option('-c, --create', 'Create new stuff')
    .parse(process.argv);

if(program.create){
    console.log('Creating new stuff');

    program.prompt('Name of the stuff: ', function(name){
        var stuffName = name;
    });

    program.prompt('Description of the stuff: ', function(description){
        var stuffDescription = description;
    });
} 

谢谢

您必须将第一个提示符的第二个提示符放在回调中

program.prompt('Name of the stuff: ', function(name){
    var stuffName = name;
    program.prompt('Description of the stuff: ', function(description){
        var stuffDescription = description;
    });

});
如果不这样做,则两个提示都会立即打印出来;API是异步的