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