Future Corporation ハマった出来事 教訓 ◼ データが増えたことで画面のレンダリング負荷が 高まり、ユーザーから「遅すぎる」と問い合わせ ◼ 子コンポーネント(データ増幅部分)から 親のonChange()メソッドを呼び出していた ◼ 共通コンポーネントとしてダイアログを作ったが、 機能ごとに操作や表示したいデータが変わり、 Stateの渡し方が複雑になってしまった ◼ 類似したダイアログがたくさんできてしまった ◼ useEffect()の中でAPIを実行し取得した値を Stateに初期値として設定したいが、できない ◼ useEffect()の条件をセットし、条件によって API実行。Stateの更新タイミングを統一 変更を加えやすい状態にしておくことが、ユーザーのやりたいことの実現につながると思います 04 Reactでの開発 Ⅱ. ハマりどころと教訓 ◼ フロントで持つデータ構造はメンテしやすい、 かつシンプルなものにする ◼ 粒度を分けて共通コンポーネント群を作成する 例:ダイアログ > ヘッダー/フッター > ボタン ◼ 業務要件と関わるところはどうしても呼び出し元、 先に依存するため、切り離して考える ◼ 無理やりやっているな、と感じるときは うまく使いこなせていない/より快適な方法がある ◼ そう感じたら、公式ドキュメントに立ち返る システムをツールとして ユーザーの業務を変えていく ▼ システムを使ってやりたいことも どんどん変わる ▼ 新しい要望から 本当にやりたいことを汲み取り 迅速にシステムに反映するために 変更しやすい状態を維持し続ける ために考えることが大切