我有一个复选框TSX(JSX)元素:
<input type="checkbox" name={i.toString()} onClick={this.handleCheckboxClick} />
在VS代码的帮助下,我知道this.handleCheckboxClick
的输入参数类型是MouseEvent<HTMLInputElement>
。所以我用它实现了它:
private handleCheckboxClick(event: MouseEvent<HTMLInputElement>) {
...
}
然后我收到错误提示[ts] Type 'MouseEvent' is not generic.
如下图所示:
我的包的版本:
"@types/react": "^15.0.29",
"@types/react-dom": "^15.5.0",
"react": "^15.6.1",
"react-dom": "^15.6.1",
"typescript": "^2.3.4",
为什么?
答案 0 :(得分:131)
您可能正在使用DOM MouseEvent
。请尝试使用React.MouseEvent<HTMLInputElement>
。
答案 1 :(得分:7)
要使用React MouseEvent,只需确保添加:
import { MouseEvent } from 'react';
答案 2 :(得分:1)
您可以使用SyntheticEvent代替MouseEvent