ghost-portal/packages/react-hooks/src/useLoadingDelay.ts
Jaco Greeff 6aefdd9178
useLoadingDelay for large lists (#3310)
* useLoadingDelay for large lists

* Accounts with isLoading

* sortedAddresses afecting check
2020-08-01 15:29:52 +02:00

20 lines
599 B
TypeScript

// Copyright 2017-2020 @polkadot/react-hooks authors & contributors
// This software may be modified and distributed under the terms
// of the Apache-2.0 license. See the LICENSE file for details.
import { useEffect, useState } from 'react';
import useIsMountedRef from './useIsMountedRef';
export default function useLoadingDelay (delay = 100): boolean {
const mountedRef = useIsMountedRef();
const [isLoading, setIsLoading] = useState(true);
useEffect((): void => {
setTimeout((): void => {
mountedRef.current && setIsLoading(false);
}, delay);
});
return isLoading;
}