fix(fl_query_hooks): query/mutation reset to initial memoized values on hot reload
This commit is contained in:
@@ -22,8 +22,8 @@ InfiniteQuery<DataType, ErrorType, PageType>
|
||||
}) {
|
||||
final rebuild = useUpdater();
|
||||
final client = useQueryClient();
|
||||
final query = useMemoized(() {
|
||||
return client.createInfiniteQuery<DataType, ErrorType, PageType>(
|
||||
final query = useMemoized<InfiniteQuery<DataType, ErrorType, PageType>>(() {
|
||||
final query = client.createInfiniteQuery<DataType, ErrorType, PageType>(
|
||||
queryKey,
|
||||
queryFn,
|
||||
initialParam: initialPage,
|
||||
@@ -32,21 +32,19 @@ InfiniteQuery<DataType, ErrorType, PageType>
|
||||
refreshConfig: refreshConfig,
|
||||
retryConfig: retryConfig,
|
||||
);
|
||||
}, [client, queryKey]);
|
||||
return query;
|
||||
}, [queryKey]);
|
||||
|
||||
useEffect(() {
|
||||
return query.addListener(rebuild);
|
||||
}, [query]);
|
||||
|
||||
useEffect(
|
||||
() {
|
||||
useEffect(() {
|
||||
if (enabled) {
|
||||
query.fetch();
|
||||
}
|
||||
return null;
|
||||
},
|
||||
[enabled],
|
||||
);
|
||||
}, [enabled]);
|
||||
|
||||
useEffect(() {
|
||||
query.updateQueryFn(queryFn);
|
||||
|
||||
@@ -19,13 +19,14 @@ Mutation<DataType, ErrorType, VariablesType>
|
||||
}) {
|
||||
final rebuild = useUpdater();
|
||||
final client = useQueryClient();
|
||||
final mutation = useMemoized(() {
|
||||
final mutation =
|
||||
useMemoized<Mutation<DataType, ErrorType, VariablesType>>(() {
|
||||
return client.createMutation<DataType, ErrorType, VariablesType>(
|
||||
mutationKey,
|
||||
mutationFn,
|
||||
retryConfig: retryConfig,
|
||||
);
|
||||
}, [client, mutationKey]);
|
||||
}, [mutationKey]);
|
||||
|
||||
final recoveryData = useState<RecoveryType?>(null);
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@ Query<DataType, ErrorType> useQuery<DataType, ErrorType>(
|
||||
}) {
|
||||
final rebuild = useUpdater();
|
||||
final client = useQueryClient();
|
||||
final query = useMemoized(() {
|
||||
return client.createQuery<DataType, ErrorType>(
|
||||
final query = useMemoized<Query<DataType, ErrorType>>(() {
|
||||
final query = client.createQuery<DataType, ErrorType>(
|
||||
queryKey,
|
||||
queryFn,
|
||||
initial: initial,
|
||||
@@ -30,7 +30,8 @@ Query<DataType, ErrorType> useQuery<DataType, ErrorType>(
|
||||
refreshConfig: refreshConfig,
|
||||
retryConfig: retryConfig,
|
||||
);
|
||||
}, [client, queryKey]);
|
||||
return query;
|
||||
}, [queryKey]);
|
||||
|
||||
useEffect(() {
|
||||
return query.addListener(rebuild);
|
||||
|
||||
Reference in New Issue
Block a user