首页 > 试题广场 >

在一个使用 `useEffect` 的函数组件中,如果 `u

[单选题]
在一个使用 `useEffect` 的函数组件中,如果 `useEffect` 的依赖项数组发生了变化,导致 effect 需要重新执行,那么上一次 effect 返回的清理(cleanup)函数会在什么时机被调用?
  • 在组件重新渲染(re-render)的过程中,DOM 更新之前。
  • 在组件完成渲染且 DOM 更新后,但在下一次 effect 执行之前。
  • 在组件即将卸载(unmount)时,且仅在卸载时调用。
  • 与下一次 effect 的执行在同一个宏任务(macro-task)中被异步调用。
当  useEffect  的依赖项发生变化,组件重新渲染后,会先执行上一次 effect 返回的 cleanup 清理函数,然后再执行本次新的 effect 回调函数;此外组件卸载时,也会执行最后一次的 cleanup 函数。
发表于 今天 06:35:11 回复(0)