refactor: move abort controller into useLazyApps hook

This commit is contained in:
Rıdvan Akca
2024-03-11 16:16:12 +03:00
parent 2ee5af8bfb
commit 5835def5d0
7 changed files with 47 additions and 38 deletions

View File

@@ -1,25 +1,26 @@
import { useMutation } from '@tanstack/react-query';
import api from 'helpers/api';
import React from 'react';
export default function useLazyApps({ appName, onSuccess }) {
const abortControllerRef = React.useRef(new AbortController());
React.useEffect(() => {
abortControllerRef.current = new AbortController();
return () => {
abortControllerRef.current?.abort();
};
}, [appName]);
export default function useLazyApps({
appName,
onSuccess,
abortControllerRef,
}) {
const query = useMutation({
mutationFn: async ({ payload, signal }) => {
abortControllerRef.current = new AbortController();
mutationFn: async ({ payload }) => {
const { data } = await api.get('/v1/apps', {
params: { name: appName },
signal: abortControllerRef.current.signal,
});
if (abortControllerRef.current.signal.aborted) {
return;
}
return data;
},
onSuccess,