TestWindow: как запустить глобальное событие, например "window: keydown" - PullRequest
0 голосов
/ 31 августа 2018

Я пишу тест для компонента, который слушает "window: keydown". Я пробовал несколько методов, но ни один из них не работает:

element.dispatchEvent(new testWindow.Event("window:keydown"))
window.dispatchEvent(new testWindow.Event("window:keydown"))
window.dispatchEvent(new Event("keydown"))
window.dispatchEvent(new Event("window:keydown"))

Какой правильный синтаксис вместо этого?

1 Ответ

0 голосов
/ 01 сентября 2018

Я сделал это так:

const keyCode = 37; // Left, but can be done wherever
const keyboardOptions: any = { bubbles: true, cancelable: true, keyCode };
document.dispatchEvent(new KeyboardEvent("keydown", keyboardOptions));

См. https://github.com/mattdsteele/joy-con-element/blob/master/src/components/joy-con/joy-con.tsx#L65 для более подробного примера.

...