请考虑以下示例
process.stdin.resume();
process.stdin.on("data", function(data) {
console.log("recieved " + data)
})
process.stdin.write("foo\n")
process.stdin.write("bar\n")
Run Code Online (Sandbox Code Playgroud)
当我输入something终端时,我明白了
received something
Run Code Online (Sandbox Code Playgroud)
为什么不以同样的方式进行工作foo和bar我先前发送使用stdin.write?
例如,如何stdin.on("data)在代码中触发此事件()?我应该process.stdin.write这样做,但我只是得到相同的输出.
它是一个可读流,从stdin文件描述符中获取输入.我不认为你可以写入该描述符(但你可以将它连接到另一个可写描述符).
但是,在您的情况下,最简单的解决方案就是模拟'data'事件.每个流都是EventEmiiter,因此以下内容将起作用:
process.stdin.resume();
process.stdin.on("data", function(data)
console.log("recieved " + data)
});
process.stdin.emit('data', 'abc');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5163 次 |
| 最近记录: |