Queryと呼ばさせていただきます。公式ドキュメント:どんなwebシステムでもフロントからサーバーへのデータの取得、修正削除などのリクエストは必ず発生します。Query使用することで、何がどう便利になったのか、簡単なサンプルを見て、体感しましょう。サンプル少し長いので最後まで付き合っていただけると幸いです。サンプル簡単なリストデータを取得することを想定しているサンプルになります。axiosで書いてますが、fetchでも使い方同じです。data;}4行のコードを書くだけで、サーバーからデータの取得はできます。次はこのリクエストをフックにして、使い勝手を改善します。);}ここまで書いたら、一見良さげですがリクエスト送った後のエラー、ローディング処理はまだのため、追加しておきます。Query使う場合、どうなるでしょう。Queryを利用するためにはreact-queryパッケージをインストールする必要があります。Query使って書き直します。Queryではコードにある通り、第一引数に任意の名前のユニークキー、第二引数にはpromiseを戻す関数を設定します。Queryのキャッシュ機能はこのユニークキーによって実現している、一度取得したデータはしばらキャッシュされて、キーが変わるタイミングで、データを再度取得します。ユニークキーは文字列以外、リストやオブジェクトにすることもできます。1})それらを踏まえて、ユーザーごとのデータを取得する際に、ユニークキーの書き方は下記のコードのようになるのが適切です。}を追加すれば、userID渡さない限り、リクエストは送信しません。})データを変更する場合useMutationというフックがあります。onClick={onSubmit}>submit</button>;}その他の使い方は公式ドキュメント参考にしてください。Queryは取得してきたデータを自動的にキャッシュする際に、条件を設定することができます。キャッシュしたデータが古くなったとみなす時間,デフォルトは0。listデータを取得し、その1分後再度listを取得し直す場合、すでにlistはキャッシュされているのでリクエストなしで表示可能です。一方でstaleTimeが0のため、キャッシュを返した後にサーバーにリクエストを投げます。データが新しくなっている場合はそちらの値に書き換えられます。設定することができます。すれば、キャッシュは常に新鮮なものとみなされるのでバックグラウンドでのフェッチは自動的には行われません。明らかデータ変更があった場合、最新のデータを表示したいときにuseQueryClientを使うことができます。Queryにキャッシュされてる古いデータを更新したい場合、useQueryClient使って、手動でキャッシュの更新ができます。queryClientにキーを指定してデータを更新できます。)これで更新されたlistが表示されるようになると思います。Query使用する場合の雰囲気を伝わるもので、実際プロジェクトに導入する際に、ルートコンポネートにQueryClientProviderを追加するところから始めると思います、詳細は公式ドキュメントをご参考ください。