← inaro.devAI駆動開発 学習ツール
応用

ローディング・エラー・空状態

なぜ学ぶか: 「一覧を表示して」と頼むと、AIは成功パターンの画面だけ作りがちです。でも実際は「読み込み中」「失敗した」「0件だった」が毎日起きます。データを表示するUIの「完成の条件」を、例で見てください。

まずはこの例を見てみましょう

function PostList({ loading, error, posts }: Props) {
  // 4つの状態を、上から順に処理していく(定石の形)
  if (loading) return <p>読み込み中…</p>;
  if (error) return <p>読み込めませんでした。再試行してください。</p>;
  if (posts.length === 0) return <p>まだ投稿がありません。</p>;

  // ここまで来たら正常表示
  return <ul>{posts.map((p) => <li key={p.id}>{p.title}</li>)}</ul>;
}

ローディング → エラー → 空 → 正常。この4分岐が揃っていれば「完成」です。

データUIの4状態

①読み込み中 ②エラー ③空(0件)④正常。設計とレビューでは常にこの4つを数えます。AIは④しか作らないことが多いです。

空状態=0件は正常、無言は事故

「まだ投稿がありません。最初の投稿を作りましょう」— 空を案内に変えるのが良いUIです。無言の空白は故障に見えます。

実装は早期リターンの連鎖

例のように、例外的な状態から上から順にreturnしていく形が読みやすく、漏れも見つけやすいです。

AIへの指示テンプレ

最初から「ローディング・エラー・空・正常の4状態を実装して」と頼むと、設計が綺麗になります。

ステップ 1 / 3

※ カリキュラムの内容はAIが生成しており、誤りが含まれる場合があります。正確な情報は公式ドキュメント等でご確認ください。