为什么我们需要使用prompt.start()?

时间:2015-08-28 03:16:44

标签: node.js

我正在学习NodeJs。

如果我放置" 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 个答案:

答案 0 :(得分: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.
//

除了处理options参数之外,函数末尾还有一些代码,如果你跳过这些代码(表面上)可能有问题:

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 :(得分:1)

在该实例中,它不会影响get命令。无论您是否pauseresume提示,都会产生影响。它还允许您传递选项以自定义提示。