Nodejs监听全球热键新闻

时间:2013-09-18 21:55:56

标签: node.js

我没有使用Node作为服务器;我正在将它用于CLI应用程序。这个虽然需要在后台运行并监听全局按键事件(没有焦点)。

我在Node中没有看到任何明显的方法。我有什么选择?

3 个答案:

答案 0 :(得分:7)

看起来你需要为所有键盘事件提供全局挂钩 您可以尝试iohook模块。使用非常简单:

const ioHook = require('iohook');
ioHook.on("keypress", event => {
  console.log(event);
  // {keychar: 'f', keycode: 19, rawcode: 15, type: 'keypress'}
});
ioHook.start();

答案 1 :(得分:1)

好像你想要daemonkeypress的组合。我只在节点脚本中使用过按键,而不是守护进程,所以我不知道它是否会以相同的方式工作。但它可能!在最糟糕的情况下,您会发现一个没有解决您的问题的解决方案。

答案 2 :(得分:0)

我只是用iohook做的。你可以这样做......

const ioHook = require('./node_modules/iohook-master/index.js');

ioHook.on("keyup",function(keyPress){
    if(keyPress.keycode == CTRLIZQ){
        //do something
    }
});

ioHook.start();