useUpdateEffect
挂载完成后,在依赖更新的时候执行
Usage
实时编辑器
function Demo() { const [count, setCount] = useState(0); const [effectCount, setEffectCount] = useState(0); const [updateEffectCount, setUpdateEffectCount] = useState(0); useEffect(() => { setEffectCount(c => c + 1); }, [count]); useUpdateEffect(() => { setUpdateEffectCount(c => c + 1); return () => { // 做一些事情 }; }, [count]); // 如果需要,可以包含 deps 数组 return ( <div> <p>effect计数: {effectCount}</p> <p>更新effect计数: {updateEffectCount}</p> <p> <button type="button" onClick={() => setCount(c => c + 1)}> 重新渲染 </button> </p> </div> ); };
结果
effect计数: 1
更新effect计数: 0