useEffect
和 useLayoutEffect
都是 React 中的钩子函数,用于在组件渲染过程中执行副作用操作。它们的主要区别在于执行时机。
-
useEffect
:useEffect
是异步执行的,它在浏览器渲染完成之后才执行。这意味着它不会阻塞浏览器的渲染过程,因此适合用于处理副作用,如数据获取、订阅事件、DOM 操作等,这些副作用不需要同步更新到视图中。import { useEffect } from 'react'; useEffect(() => { // 执行副作用操作,不会阻塞渲染 }