2015-08-28 3 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 в этом случае. Это повлияет на то, сможете ли вы получить pause или resume. Он также позволяет вам передавать параметры для настройки вашего приглашения.

Смежные вопросы