Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么';输入';事件具有“事件”类型的事件,而不是“InputEvent”`_Javascript_Typescript_Dom_Types - Fatal编程技术网

Javascript 为什么';输入';事件具有“事件”类型的事件,而不是“InputEvent”`

Javascript 为什么';输入';事件具有“事件”类型的事件,而不是“InputEvent”`,javascript,typescript,dom,types,Javascript,Typescript,Dom,Types,嗨,我想知道为什么'input'事件类型是事件类型(我认为应该是InputEvent) 我在这样做时遇到了这个问题: InputTextFieldListenerProps接口扩展了BaseTextFieldListenerProps{ 事件名称:提取; 回调(e?:InputEvent):无效; } if(isOnInputTextFieldProps(listenerProps)){ this.input.addEventListener(listenerProps.eventName,li

嗨,我想知道为什么
'input'
事件类型是
事件类型(我认为应该是
InputEvent

我在这样做时遇到了这个问题:

InputTextFieldListenerProps接口扩展了BaseTextFieldListenerProps{ 事件名称:提取; 回调(e?:InputEvent):无效; } if(isOnInputTextFieldProps(listenerProps)){ this.input.addEventListener(listenerProps.eventName,listenerProps.callback.bind(this)); }
现在我得到了这个错误:

TS2345:类型为“(e?:InputEvent | undefined)=>void”的参数不可分配给类型为“(this:HTMLInputElement,ev:Event)=>any”的参数

这是完全正确的。但是为什么
GlobalEventHandlersEventMap
被键入为
事件而不是
输入事件

您可以在这里
5715行
找到这个
GlobalEventHandlersEventMap
界面

注 表示
globalEventHandler.oninput
接口是
InputEvent
oninput
可能相当于typescript
input
。我这样认为是因为在MDN文档中,
GlobalEventHandlers
接口的每个键都以
on
开头

我还决定在Typescript repo中打开一个问题,您可以在这里找到:


因此,这个
'input'
事件的主要原因是
事件的类型而不是
InputEvent
,是
InputEvent
的一部分,而不是

如果您想了解更多信息,可以阅读Andrew Branch提供的