Когда вы возвращаете функцию в обратном вызове, переданном в useEffect
, возвращаемая функция будет вызываться до удаления компонента из пользовательского интерфейса.
Обычно мы выполняем очистки в componentWillUnmount
для класса на основе составная часть. Допустим, вы хотите создать прослушиватель событий в componentDidMount
и очистить его в componentDidUnmount
. Как класс, основанный на перехватах, код будет объединен в одну функцию обратного вызова.
Для очистки определите вот так -example
useEffect(()=>{
let interval = setInterval(()=>{
// do something
}),1000}
return () => { clearInterval(interval) }
}, [foo])
Для лучшего понимания проверьте официальный Эффекты с очисткой