web-dev-qa-db-ja.com

チェックボックスイベントハンドラーの `MouseEvent`が一般的ではないのはなぜですか?

チェックボックス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.というエラーが表示されます。

enter image description here

パッケージのバージョン:

"@types/react": "^15.0.29",
"@types/react-dom": "^15.5.0",
"react": "^15.6.1",
"react-dom": "^15.6.1",
"TypeScript": "^2.3.4",

何故ですか?

49
Ben

おそらくDOM MouseEventを使用しています。代わりにReact.MouseEvent<HTMLInputElement>を使用してみてください。

146
rossipedia