2015-08-28 205 views
0

我正在学习NodeJs。为什么我们需要使用prompt.start()?

下面的代码具有相同的影响,如果我把“prompt.start();”在评论中:

var prompt = require('prompt'); 

    // 
    // Start the prompt 
    // 


    prompt.start(); 

    // 
    // Get two properties from the user: username and email 
    // 
    prompt.get(['username', 'email'], function (err, result) { 
    // 
    // Log the results. 
    // 
    console.log('Command-line input received:'); 
    console.log(' username: ' + result.username); 
    console.log(' email: ' + result.email); 
    }); 

那么prompt.start()是什么意思?

回答

2

通常回答这样问题的最佳位置是source code itself

如果你看一下,你会看到start()有一个options参数,你可以通过它来配置它的工作方式。

只要上述函数是一些文档:

// 
// ### function start (options) 
// #### @options {Object} **Optional** Options to consume by prompt 
// Starts the prompt by listening to the appropriate events on `options.stdin` 
// and `options.stdout`. If no streams are supplied, then `process.stdin` 
// and `process.stdout` are used, respectively. 
// 
从处理的选项参数

之外,还有就是在函数,如果跳过哪个(在表面上)可能是有问题的端部的一些代码:

if (process.platform !== 'win32') { 
    // windows falls apart trying to deal with SIGINT 
    process.on('SIGINT', function() { 
     stdout.write('\n'); 
     process.exit(1); 
    }); 
    } 

    prompt.emit('start'); 
    prompt.started = true; 
    return prompt; 
1

在这种情况下,不会影响get命令。它会影响您是否可以pauseresume的提示。它还允许您传递选项来自定义提示。