Следующий код будет выводить x на консоль каждый раз, когда отрисовывается компонент-оболочка:
useEffect(() => { console.log('x'); });
Следующий код будет выводить x на консоль каждый раз, когда компоненты, указанные в массиве зависимостей, изменяются:
useEffect(() => { console.log('x'); }, [dep1, dep2, dep3...depN]);
Следующий код будет печатать x каждый раз, когда компоненты, указанные в массиве зависимостей, изменяются, и после первого выполнения он будет запускать возвращаемую функцию перед каждым выполнением:
useEffect(() => { console.log('x'); return () => { console.log('running before the the after-first useEffect execution'); }; }, [dep1, dep2, dep3...depN]);
Следующая функция будет печатать x каждый раз, когда компонент-оболочка монтируется, и 'y', когда он размонтируется:
useEffect(() => { console.log('x'); return () => { console.log('y'); }; }, []); // mind the empty dep array