const useUpdateUserInfo = createMutation({
request: updateUserInfo,
dependentQueries: ['getUserInfo'],
updateQueryStateOnSuccess: (queryClient, data, variables) => {
queryClient.setQueryData<UserInfo>(['getUserInfo'], (prevData): UserInfo | undefined => {
console.log('prevData: ', prevData); // Undefined even if there is data in the queryCache for that queryKey
// const cache = queryClient.getQueryCache();
// console.log('cache: ', cache);
// const oldData = cache?.queriesMap?.['getUserInfo']?.state?.data?.result;
// console.log('oldData: ', oldData); // Works but ugly af
if (!prevData || !variables) {
return;
}
console.log('updating cache');
return {
...prevData,
firstName: variables.firstName,
lastName: variables.lastName,
email: variables.emailId,
phoneNumber: variables.mobileNumber,
};
});
},
});
const useUpdateUserInfo = createMutation({
request: updateUserInfo,
dependentQueries: ['getUserInfo'],
updateQueryStateOnSuccess: (queryClient, data, variables) => {
queryClient.setQueryData<UserInfo>(['getUserInfo'], (prevData): UserInfo | undefined => {
console.log('prevData: ', prevData); // Undefined even if there is data in the queryCache for that queryKey
// const cache = queryClient.getQueryCache();
// console.log('cache: ', cache);
// const oldData = cache?.queriesMap?.['getUserInfo']?.state?.data?.result;
// console.log('oldData: ', oldData); // Works but ugly af
if (!prevData || !variables) {
return;
}
console.log('updating cache');
return {
...prevData,
firstName: variables.firstName,
lastName: variables.lastName,
email: variables.emailId,
phoneNumber: variables.mobileNumber,
};
});
},
});