6.4. キャッシュ更新ヘルパーの使用
@aerogear/voyager-client モジュールは、アプリケーションのキャッシュへの更新を管理するためのすぐに使用できるソリューションを提供します。ミューテーションとサブスクリプションの両方のキャッシュ更新メソッドをインテリジェントに生成できます。
6.4.1. ミューテーションにキャッシュ更新ヘルパーを使用する リンクのコピーリンクがクリップボードにコピーされました!
次の例は、これらのヘルパーメソッドをミューテーションに使用する方法を示しています。これらのメソッドを使用するには、「オフラインクライアントの作成」で説明されているようにオフラインクライアントを作成し、offlineMutate メソッドを使用します。offlineMutate 関数は、MutationHelperOptions オブジェクトをパラメーターとして受け入れます。
updateQuery パラメーターに配列を提供することにより、キャッシュを更新するための複数のクエリーを提供することもできます。
次の例は、mutationOptions オブジェクトを使用してタスクを追加するためのオフラインミューテーションを準備する方法と、クライアントのキャッシュの GET_TASK クエリーを更新する方法を示しています。
const { createMutationOptions, CacheOperation } = require('@aerogear/voyager-client');
client.offlineMutate<Task>(mutationOptions);
const { createMutationOptions, CacheOperation } = require('@aerogear/voyager-client');
client.offlineMutate<Task>(mutationOptions);
オフラインクライアントを使用したくない場合は、createMutationOptions 関数を直接使用することもできます。この関数は、既存のクライアントに渡す Apollo 互換の MutationOptions オブジェクトを提供します。次の例は、mutationOptions が前のコード例と同じオブジェクトである場合にこの関数を使用する方法を示しています。
const options = createMutationOptions(mutationOptions); client.mutate<Task>(options);
const options = createMutationOptions(mutationOptions);
client.mutate<Task>(options);