2025年2月23日

Reactでのエラーハンドリング

  • server actionsのエラーハンドリング

    • server actionsでは入力値のバリデーションを行い、エラーメッセージを返す。 (zodなどのライブラリを用いても良いし、カスタマイズしても良いのかも)
  • レンダリングのエラーハンドリング

    • 意図しないエラーで開発(dev mode)時などで発生する。
    • 開発者向けのエラーで、本番では発生しない。
  • フェッチのエラーハンドリング

    • ErrorBoundaryを使用して、fetch時に発生した際のエラーUIを表示する。
    • 公式ではクラスコンポーネントとしてErrorBoundaryが書かれているが、ボイラーテンプレートなので、必ずクラスコンポーネントでないといけないわけでない。
    • react error boundayライブラリを利用しても良いかもしれない。

意図したエラーだと、フォームのエラー。 意図しないエラーだとレンダリングやデータフェッチに起こるエラー。 ReactでUIを構築する際は上記のエラーをメンタルモデルとしてあると開発時に迷わない。

参照

Error Handling in React (Complete Tutorial)