Tengo una aplicación en la que tengo varias llamadas a un enlace, para simplificar el ejemplo, supongamos que se ve así:
const Test = () => { ... useTest(); useTest(); .... }
y supongamos que useTest
se ve así:
export default function useTest() { useEffect(() => { console.log('test'); }) }
¿Cómo puedo hacer que console.log
se ejecute solo una vez en la fase de procesamiento/reprocesamiento dada, sin importar cuántas veces se llame a este enlace?
Puede usar la matriz de dependencia en useEffect.
export default function useTest() { useEffect(() => { console.log('test'); },[]) // Run only once }
export default function useTest() { useEffect(() => { console.log('test'); },[someVar]) // Run on first mount and every time someVar changes }