首页 > 解决方案 > 在 Node.js 中同步获取字符

问题描述

我想从终端一次同步地获取一个字符,并在按下一个键后立即读取它。我无法让它在 Windows 上工作,它应该像 C/C++ 中的 getc() 一样工作。

console.log("其他代码!");

x = getCharcter(); //不确定如何同步执行此操作

process.out.write(x);

console.log("更多代码!");

标签: node.jssynchronization

解决方案


尝试这个:

const readline = require('readline');

readline.emitKeypressEvents(process.stdin);
process.stdin.setRawMode(true);

process.stdout.write("press character: ")

process.stdin.on('keypress', (str, key) => {
  process.stdout.write("[pressed " + key.name + "] ")
  if (key.ctrl && key.name == 'c') process.exit();
})

推荐阅读