こんにちは Gaji-Labo フロントエンドエンジニアの茶木です。 apiとの格闘の日々が続いています。 特にエラーの取り回しは、非同期処理も重なっており、地味に複雑だと思います。 そこで、一度使いやすいパターンを作ってしまおうと思います。 基本形エラー処理を書かない基本形は api の非同期処理を useEffect の中で吸収し、 res の有無で、ローディングとコンテンツを出し分けするようにします。 const [state, setState] = useState(); useEffect(() => { (async () => { const res = await getSomthingApi(); setState(res); })(); }, []); if(!res) return <p>ローディング中</p> const {data} = res; return