将window.event处理程序添加到typescript

Top*_*000 4 javascript typescript

通常当我想在js中的页面上捕获事件时:

window.onkeydown = function (event) {
    //Do something here
}
Run Code Online (Sandbox Code Playgroud)

我似乎无法弄清楚(或Google)如何在打字稿中做到这一点.对于我正在使用的设置,ts页面有一个文件,以及ts正在加载的类的文件.

Bru*_*der 7

这个

window.addEventListener('keydown', keyDownListener, false)
Run Code Online (Sandbox Code Playgroud)

window将所有事件定义为lib.d.ts和此特定侦听器一样

 addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;
Run Code Online (Sandbox Code Playgroud)

或者,如果你想保持原来的"风格",

window.onkeydown = (ev: KeyboardEvent): any => {
     //do something
}
Run Code Online (Sandbox Code Playgroud)