hook useEffect与class组件中生命周期函数的类比

2022-10-27 10:02:41
React中,hook(函数组件)中的useEffect可以看做class组件中的生命周期函数: useEffect(()=>{ /*执行逻辑*/ },[]) 类似于componentDidMount //前者的空数组表示只会在组件挂载时执行一次。 useEffect(()=>{ /*执行逻辑*/ },[a]) 类似于componentDidupdate //表示当数组存放变量a发生变化后,执行逻辑再次执行。(数组中可存放多个变量) useEffect(()=>{ /*执行逻辑并返回一个回调函数*/ },[]) 类似于 componentWillUnmount //组件被摧毁时使用去除副作用,一般去掉不断循环的订阅(计时器,或者递归循环,以减少不必要的开销)