如何捕捉 Cycle.js 中的键盘事件?
How to catch keyboard events in Cycle.js?
我试图掌握用户在打开我的应用程序时按下 Escape 键的时间(因此不一定要聚焦输入字段)。然而,到目前为止,我完全无法拦截键盘事件。这就是我目前正在尝试的:
drivers.DOM.select(':root')
.events('keypress')
// .filter(ev => ev.keyCode === 27)
.map(ev => true)
我也试过在 body
和 html
上抓晚上,但都无济于事...
只做一个单行键盘驱动:
Cycle.run(main, {
DOM: makeDOMDriver(containerElement),
Keypress: () => Rx.Observable.fromEvent(document, 'keypress'); // <=====
});
检查这个例子:https://github.com/cyclejs/examples/blob/master/animated-letters/src/main.js#L110
我试图掌握用户在打开我的应用程序时按下 Escape 键的时间(因此不一定要聚焦输入字段)。然而,到目前为止,我完全无法拦截键盘事件。这就是我目前正在尝试的:
drivers.DOM.select(':root')
.events('keypress')
// .filter(ev => ev.keyCode === 27)
.map(ev => true)
我也试过在 body
和 html
上抓晚上,但都无济于事...
只做一个单行键盘驱动:
Cycle.run(main, {
DOM: makeDOMDriver(containerElement),
Keypress: () => Rx.Observable.fromEvent(document, 'keypress'); // <=====
});
检查这个例子:https://github.com/cyclejs/examples/blob/master/animated-letters/src/main.js#L110