@shopify/polaris
Version:
Shopify’s product component library
23 lines (22 loc) • 763 B
JavaScript
import { useState, useEffect } from 'react';
/**
* useIsAfterInitialMount will trigger a re-render to provide
* you with an updated value. Using this you enhance server-side
* code that can only run on the client.
* @returns MutableRefObject<T> - Returns a ref object with the
* results from invoking initial value
* @example
* function ComponentExample({children}) {
* const isMounted = useIsAfterInitialMount();
* const content = isMounted ? children : null;
*
* return <React.Fragment>{content}</React.Fragment>;
* }
*/
export function useIsAfterInitialMount() {
const [isAfterInitialMount, setIsAfterInitialMount] = useState(false);
useEffect(() => {
setIsAfterInitialMount(true);
}, []);
return isAfterInitialMount;
}