# All files / utils useMountedEffect.ts

87.5% Statements 7/8
50% Branches 1/2
100% Functions 2/2
87.5% Lines 7/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    231x

    1x

    3x

    3x
    3x
    3x

    3x

     import {useEffect, useRef, EffectCallback, DependencyList} from 'react'

    /*
      Behaves like `useEffect`, but won't fire after the initial render of a
      component.
    */
    export const useMountedEffect = (
      effect: EffectCallback,
      inputs?: DependencyList
    ) => {
      const isFirstRender = useRef(true)

      useEffect(() => {
        Eif (isFirstRender.current) {
          isFirstRender.current = false

          return
        }

        return effect()
      }, inputs)
    }