結論:ほとんど違いはなし
buttonタグ内にあるonClick
の書き方はどちらでも可
違いとしては
-
onClick={handleClick}
の書き方の場合- コンポーネントが再レンダリングされても関数は再生成されない
-
onClick={() => handleClick()}
の書き方の場合
- コンポーネントが再レンダリングされる度にアロー関数が再生成される
基本は前者の書き方で、引数を受け取りたい場合は後者の書き方がよい
const handleClick = () => {
console.log("clicked")
}
return (
<div>
<button>
// 下記はどちらでも可
onClick={handleClick}
onClick={() => handleClick()}
>
hgoe
</button>
</div>