mirror of https://github.com/msgbyte/tailchat
parent
344b109aac
commit
32e7dbedf9
@ -1,13 +1,24 @@
|
|||||||
|
import { useEffect } from 'react';
|
||||||
import { fetchAvailableServices } from '../../model/common';
|
import { fetchAvailableServices } from '../../model/common';
|
||||||
import { useAsync } from '../useAsync';
|
import { useAsyncFn } from '../useAsyncFn';
|
||||||
|
import { useMemoizedFn } from '../useMemoizedFn';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用于监测服务是否可用的hooks
|
* 用于监测服务是否可用的hooks
|
||||||
*/
|
*/
|
||||||
export function useAvailableServices() {
|
export function useAvailableServices() {
|
||||||
const { loading, value: availableServices } = useAsync(() =>
|
const [{ loading, value: availableServices }, fetch] = useAsyncFn(() =>
|
||||||
fetchAvailableServices()
|
fetchAvailableServices()
|
||||||
);
|
);
|
||||||
|
|
||||||
return { loading, availableServices };
|
useEffect(() => {
|
||||||
|
fetch();
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
const refetch = useMemoizedFn(async () => {
|
||||||
|
fetchAvailableServices.clearCache();
|
||||||
|
fetch();
|
||||||
|
});
|
||||||
|
|
||||||
|
return { loading, availableServices, refetch };
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue