useIsomorphicLayoutEffect


Custom hook that uses either useLayoutEffect or useEffect based on the environment (client-side or server-side).

Usage

import { useIsomorphicLayoutEffect } from 'usehooks-ts'  export default function Component() {  useIsomorphicLayoutEffect(() => {  console.log(  "In the browser, I'm an `useLayoutEffect`, but in SSR, I'm an `useEffect`.",  )  }, [])   return <p>Hello, world</p> } 

API

useIsomorphicLayoutEffect(effect, deps?): void

Custom hook that uses either useLayoutEffect or useEffect based on the environment (client-side or server-side).

Parameters

NameTypeDescription
effectEffectCallbackThe effect function to be executed.
deps?DependencyList-

Returns

void

Hook

import { useEffect, useLayoutEffect } from 'react'  export const useIsomorphicLayoutEffect =  typeof window !== 'undefined' ? useLayoutEffect : useEffect