Notes

事件系统概述

一句话结论:React 事件系统用“事件委托 + 合成事件 + 插件化提取”统一浏览器差异,并把事件与 Fiber 关联起来,最终在捕获/冒泡阶段按组件树顺序触发回调。

1. 为什么不直接用原生事件

  • 统一兼容:屏蔽浏览器差异
  • 统一语义:同一套事件对象(SyntheticEvent)与优先级体系
  • 统一调度:事件触发的更新可以映射到 React 的优先级/Lane

2. 两个关键设计

  • 事件委托:在根容器注册少量监听,减少绑定数量
  • 合成事件:封装原生事件,提供一致接口(并可做额外处理)

关联阅读

cd ..