Как заставить событие 'end' работать в node.js - PullRequest
0 голосов
/ 05 февраля 2019

Я не понимаю, почему я не могу вызвать событие end в этом коде ниже.Я уже прочитал слишком много о том, как это сделать, и я понимаю, что мне нужно переключить поток (process.stdin) в текущий режим.Но если в моем коде есть событие data, разве это не происходит автоматически в текущем режиме?Я уже пробовал process.stdin.resume() и .pipe().Я запускаю это на Node.js.Большое спасибо.

// begin snippet: js hide: false console: true babel: false 
// language: lang-js

var i=0;
process.stdin.resume();
process.stdin.setEncoding("utf-8");
var stdin_input = "";

process.stdin.on("data", function (input) {
    stdin_input += input;
    i++
    if(i>5){
        //do something to call "end" event at the bottom
        i=0
    }       
});

process.stdin.on("end", function () {
    console.log(stdin_input);
             });
// end snippet 
...