我有一个带有数据列表的组件。另外,我还有另一个带有 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)
问题是缓存已更新,但列表组件没有使用最新的缓存版本。