中等React
0 1

React组件卸载前,DOM元素上的监听事件和定时器是否需要手动清除?为什么?

【概念释义】

组件 卸载前非 React 管理的副作用 必须手动清理:setInterval/setTimeout、window/document 监听、第三方订阅、未 abort 的 fetch。React 合成事件 在 root 委托,组件卸载后一般无需逐个 remove DOM 监听;但 useEffect 里手动 addEventListener 必须在 cleanup 移除,否则回调仍可能 setState 已卸载组件。

【基础使用】

jsx
function Timer() {
  const [sec, setSec] = useState(0);

登录查看完整 1197

回答讨论

暂无讨论,登录后可抢先发言

本题库更多题目(50)