我有一个自定义钩子,它从我的 graphql 服务器获取一些基本的用户配置文件数据。它被许多组件调用以访问该数据。现在它似乎正在导致重新渲染,因为每次调用它都会再次获取该数据。我应该如何最好地在这个钩子中缓存这些数据?useCustomQuery
是从我的 gql 客户端导入的。
export const useUserData = () => {
const { data, isLoading, error } = useCustomQuery({
query: async (query) => {
return getFields(query.me, 'account_id', 'role', 'email', 'profile_image');
},
});
return { isLoading, error, me: data };
};