4

我有一个带有数据列表的组件。另外,我还有另一个带有 item 元素的突变。更新后,缓存更新,但列表保持不更新,直到重新渲染组件。

列表组件查询:

 export const categoriesQuery = gql`
    query Categories {
      podcastCategories {
        id
        regions
        title
        subcategories {
          title
        }
      }
    }
  `

useQuery用于获取数据:

const categoriesResults = useQuery<Categories>(categoriesQuery)
console.log('categoriesReults', categoriesResults)

另外,我还有其他CategoriesItem.tsx带有突变的组件:

export const podcastCategoryUpdate = gql`
   mutation PodcastCategoryUpdate($categoryId: String!, $category: CategoryInput!) {
     podcastCategoryUpdate(categoryId: $categoryId, category: $category) {
       coverImageUrl
       coverImageId
       color
       id
       svg
       subcategories {
         categoryId
         id
         title
         translations {
           region
           title
         }
       }
       regions
       title
       translations {
         region
         title
       }
     }
   }
 `

我使用useMutation钩子来更新它:

const updateFn = useMutation<PodcastCategoryUpdate, PodcastCategoryUpdateVariables>(podcastCategoryUpdate)

问题是缓存已更新,但列表组件没有使用最新的缓存版本。

4

0 回答 0