React Query とデータベースを使用したデータ キャッシュのマージ

WBOY
リリース: 2023-09-27 08:01:43
オリジナル
1429 人が閲覧しました

使用 React Query 和数据库进行数据缓存合并

データ キャッシュのマージに React Query とデータベースを使用する

はじめに:
現代のフロントエンド開発において、データ管理は非常に重要な部分です。パフォーマンスとユーザー エクスペリエンスを向上させるには、通常、サーバーから返されたデータをキャッシュし、ローカル データベース データとマージする必要があります。 React Query は、データのクエリ、キャッシュ、更新を処理するための強力な API を提供する、非常に人気のあるデータ キャッシュ ライブラリです。この記事では、React Query とデータベースを使用してデータ キャッシュをマージする方法を紹介し、具体的なコード例を示します。

ステップ 1: React Query をインストールして構成する
まず、React Query をインストールする必要があります。ターミナルを開いて次のコマンドを実行します:

npm install reverse-query
または
yarn add reverse-query
次に、プロジェクト内に React Query 構成ファイルを作成します。 React-query-config.js という名前のファイルを src ディレクトリに作成し、次の内容を追加します:

import { QueryClient, QueryClientProvider } from 'react-query';

const queryClient = new QueryClient();

export const QueryClientProviderWrapper = ({ Children }) => (

{children}
ログイン後にコピー


);
ここでは、queryClient という名前のインスタンスを作成し、それを QueryClientProvider コンポーネントに渡します。こうすることで、プロジェクト全体で React Query を使用できるようになります。

ステップ 2: データ API を作成する
次に、サーバー上のデータを取得して React Query にキャッシュするためのデータ API を作成する必要があります。 API が項目のリストを取得し、すべての項目を含む配列を返す getItems() メソッドを提供するとします。 src ディレクトリに api.js という名前のファイルを作成し、次の内容を追加します。

import { queryClient } from './react-query-config';

export const getItems = async ( ) =>gt; {
// サーバーからアイテムデータを取得
const response = await fetch('/api/items');
const data = await response.json();

// React Query にデータをキャッシュします
queryClient.setQueryData('items', data);

return data;
};
ここでは fetch() メソッドを使用します。サーバーからデータを取得し、queryClient.setQueryData() メソッドを使用してデータを React Query にキャッシュします。

ステップ 3: データベース API を作成する
次に、ローカル データベースからデータを取得するためのデータベース API を作成する必要があります。データベースが、データベース内の項目のリストを取得し、すべての項目を含む配列を返す getItemsFromDatabase() メソッドを提供しているとします。 src ディレクトリに database.js という名前のファイルを作成し、次の内容を追加します:

export const getItemsFromDatabase = () => {
// データベースから項目データを取得
const items = ...

return items;
};
実際のアプリケーションでは、使用するデータベースの種類と対応するライブラリに応じて getItemsFromDatabase() メソッドを実装する必要があります。

ステップ 4: データをマージする
これで、React Query とデータベース API を使用してデータをマージできます。このコンポーネントでは、 useQuery() フックを使用してデータを取得し、 useMutation() フックを使用してデータの更新を処理します。基本的なコンポーネントの例を次に示します。

import { useQuery, useMutation } from 'react-query';
import { getItems, getItemsFromDatabase } from './api';

const ItemsList = () => {
// useQuery フックを使用してデータを取得します
const { data:serverData } = useQuery('items', getItems);
const { data:databaseData } = useQuery( ' itemsFromDatabase', getItemsFromDatabase);

//データ更新を処理するには useMutation フックを使用します
const { mutate } = useMutation(() => {

// 在这里使用数据库API更新数据
ログイン後にコピー

});

// キャッシュ データとデータベース データをマージします
constmergedData = [...serverData, ...databaseData];

return (

<div>
  {mergedData.map((item) => (
    <div key={item.id}>{item.name}</div>
  ))}
</div>
ログイン後にコピー

);
} ;
ここでは、2 つの useQuery フックを使用して、サーバーとデータベースからそれぞれデータを取得します (クエリ キーとして 'items' と 'itemsFromDatabase' を渡します)。次に、useMutation フックを使用してデータの更新を処理します。最後に、キャッシュ データをデータベース データとマージし、コンポーネントに表示します。

概要:
データ キャッシュのマージに React Query とデータベースを使用すると、アプリケーションのパフォーマンスとユーザー エクスペリエンスを大幅に向上させることができます。この記事では、React Query をインストールして構成する方法、および React Query とデータベース API を使用してデータを取得および更新する方法を学びました。この記事がお役に立てば幸いです。ご質問がございましたら、お気軽にお問い合わせください。

以上がReact Query とデータベースを使用したデータ キャッシュのマージの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!