Kiedy wykonuje się funkcja czyszczona w useEffect w React? Czy najpierw uruchamiana jest funkcja czyszcząca, a dopiero potem jest aktualizowany state przy użyciu metody setState czy może na odwrót?

- Rejestracja:ponad 3 lata
- Ostatnio:około 23 godziny
- Postów:847
2
https://pl.reactjs.org/docs/hooks-effect.html#example-using-hooks-1
Jeśli przekazujemy pustą tablicę jako zależność to funkcja "czyszcząca" wykona się jedynie w momencie odmontowania komponentu.
useEffect(() => {
console.log('init'); // wykona się raz podczas renderowanie komponentu
return () => { // funkcja zostanie wywołana przy kasowaniu komponentu z DOM
console.log('delete');
};
}, []);
Przy przekazaniu wartości do tablicy useEffect wywoła funkcję przy każdej zmianie tych wartości.
useEffect(() => {
console.log('init'); // wykona się za każdym razem jak wartość foo, bar lub loremIpsum się zmieni
return () => { // tutaj tak samo, funkcja zostanie wywołana za każdym razem jak wartość foo, bar lub loremIpsum się zmieni
console.log('delete');
};
}, [foo, bar, loremIpsum]);
edytowany 1x, ostatnio: Xarviel
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.