-
useEffectフックの基本的な使い方
- useEffectは、コンポーネントがレンダリングされた後に実行される関数です。
- useEffectの第2引数に依存配列を指定することで、特定の値の変更時にのみ実行されるように制御できます。
-
非同期処理の実装
- async/awaitキーワードを使用して非同期処理を実装します。
- 非同期処理を含む関数を作成し、その関数内でawaitキーワードを使用して非同期処理の完了を待機します。
-
useEffect内での非同期処理の実行
- useEffect内で非同期処理を実行するためには、非同期関数を定義し、その関数を直接呼び出すことができます。
- または、useEffect内で即時実行関数を使用することもできます。
以下に、実装例を示します。
import React, { useEffect } from 'react';
const MyComponent = () => {
useEffect(() => {
const fetchData = async () => {
try {
const response = await fetch('https://api.example.com/data');
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}
};
fetchData();
}, []);
return <div>コンポーネントの内容</div>;
};
export default MyComponent;
上記の例では、useEffect内で非同期関数fetchDataを定義し、即時実行しています。非同期関数内でfetchを使用してデータを取得し、JSONデータをコンソールに表示します。エラーが発生した場合は、コンソールにエラーメッセージを表示します。
このように、useEffectとasync/awaitを組み合わせることで、Reactアプリケーションで非同期処理を簡単に実装することができます。