useEffect
useEffect(() => {
// codes
return () => { } // 当组件取消以后会执行return的东西
}, []) // render 完以后执行
useEffect(() => {
// codes
}, [state]) // state 有变化时候执行,包括第一次
useEffect(() => {
// codes
}) // 每次render都会执行
useLayoutEffect 使用方法同理
区别
-
useLayoutEffect 总会比 useEffect 先执行,它是render前的动作,除非特殊场景,不然使用 useEffect 即可。
网友评论