Почему "MouseEvent" в обработчике события checkbox не является общим?

У меня есть элемент 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",

Это почему?

Ответ 1

Вероятно, вы используете DOM MouseEvent. React.MouseEvent<HTMLInputElement> попробуйте использовать React.MouseEvent<HTMLInputElement>.

Ответ 2

Вы можете использовать SyntheticEvent вместо MouseEvent