-
Hi there, I'm trying type my query correctly, whilst also enabling support for a selector function. What I have currently is the following; export function useMyResources<T = ReadonlyArray<MyResource>>(
select?: (queryData: ReadonlyArray<MyResource>) => T,
): UseQueryResult<T, Error> {
return useQuery<ReadonlyArray<MyResource>, Error, T>({
queryKey: ["my-resources"],
queryFn: fetchMyResources,
staleTime: 60000,
select,
});
}
What I'd love to define is the following; export function useMyResources<
QueryData = ReadonlyArray<MyResource>,
Data = QueryData,
>(
select?: (queryData: QueryData) => Data,
): UseQueryResult<Data, Error> {
return useQuery<QueryData, Error, Data>({
queryKey: ["my-resources"],
queryFn: fetchMyResources,
staleTime: 60000,
select,
});
} This means that in the event that the data isn't transformed through However, this does not compile and instead throws the following error at me; I've seen mentions of ensuring that all the generics are covered, but I couldn't get that to work in my case. It seems a little bit odd that Any guidance on this would be greatly appreciated! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
you'd want:
|
Beta Was this translation helpful? Give feedback.
you'd want: