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

@@ -39,14 +39,12 @@ function AddNewAppConnection(props) {
const formatMessage = useFormatMessage();
const [appName, setAppName] = React.useState('');
const [isLoading, setIsLoading] = React.useState(false);
const abortControllerRef = React.useRef(null);
const { data: apps, mutate } = useLazyApps({
appName,
onSuccess: () => {
setIsLoading(false);
},
abortControllerRef,
});
const fetchData = React.useMemo(() => debounce(mutate, 300), [mutate]);
@@ -54,18 +52,10 @@ function AddNewAppConnection(props) {
React.useEffect(() => {
setIsLoading(true);
if (abortControllerRef.current) {
abortControllerRef.current.abort();
}
abortControllerRef.current = new AbortController();
fetchData(appName);
return () => {
fetchData.cancel();
if (abortControllerRef.current) {
abortControllerRef.current.abort();
}
};
}, [fetchData, appName]);