Skip to main content

Typescript React_定義Event

定義 onChange 事件

在此介面中,currentTarget 是一個合併了通用約束 TEventTarget 的交集型別。當事件是由輸入元素觸發時,應使用 ChangeEvent,其在 定義檔案React 官方文檔 中都有詳細描述。

正確的使用方法如下:

update = (e: React.ChangeEvent<HTMLInputElement>): void => {
this.props.login[e.currentTarget.name] = e.currentTarget.value;
}

註: 雖然最初的答案建議使用 React.FormEvent,但更精確的型別應為 React.ChangeEvent,如上所示。

定義 onClick 事件

參考自 StackOverflow 的討論,可以這麼使用:

onClick={(event: React.MouseEvent<HTMLElement>) => {
makeMove(ownMark, (event.target as any).index);
}}

// 或

onClick = (e: React.MouseEvent<HTMLInputElement>) => {
let button = e.target as HTMLInputElement;
}