【GraphQL/Apollo】クエリのrefetch時にonCompletedが動かない

フロントエンド

問題

apollo clientでクエリのリフェッチ時にonCompletedで指定した処理が動かない。
(今回は取得情報に基づいて一覧を表示する処理でした)

解決方法

notifyOnNetworkStatusChange: true を追加する。

const { loading, data, refetch } = useQuery(
    GET_DOG_PHOTO,
    {
      onCompleted: ()=>{},
      notifyOnNetworkStatusChange: true,
    },
);

notifyOnNetworkStatusChangeをtrueにすると、ネットワークの状態(エラー含む)が変化した時に、進行中のクエリの関連コンポーネントが再レンダリングされます。

タイトルとURLをコピーしました