聞きたいこと
プロジェクト全体で使用しているbutton
コンポーネントなどのonClick()
イベントに下記のevent()
のような共通処理を割り込ませる方法を探しております。
最終的には各コンポーネントで使用するbutton
のonClick
にevent()
の処理が埋め込まれている状態にしたいです。
自分で調査した結果、以下の2種類の方法を見つけましたが、割り込ませたいイベントの処理にも依存するとは思いますが、どちらの手法がベターなのか皆さんをご意見をお聞きしたいです。
また、間違っているor不足している点などがございましたら、ご教授いただけますと幸いです。
javascript
1const event = (props: HogeType): void => { 2 // ここでpropsを外部に送信する 3} 4 5// クリックされたときにidなどをevent()に渡して実行したい。これを共通化したい。 6<button id="hogehoge">Done</button>
1. buttonコンポーネントのカスタムコンポーネントを作成する
カスタムコンポーネントの使用を義務付けるのはイケてないですし、既存のbuttonも書き換える必要があって実装量が増えてしまうという懸念点があります。。。
2. 渡されたbuttonコンポーネントのonClickに①
のような処理を追加して返すHOCを作成する
HOCを使ったことがなく、知識不足は否めませんが今回のような横断的関心事には良さそうでは?と思い候補に挙げています。
バージョン
json
1"react": "^16.13.1", 2"typescript": "^3.9.2"
回答1件
あなたの回答
tips
プレビュー