互联网/IT行业面试题更新 2026-08-05

请说明 React 事件系统中的事件代理机制:早期版本挂载在 document 上,后来改为根容器,这样设计的原因和影响是什么?

知乎前端/移动开发互联网/IT技术原理方案权衡React

考察说明

考察对 React 事件代理机制及其版本演进的理解

回答思路

  1. 说明事件代理的基本原理,即事件监听挂载在统一根节点而非每个 DOM 元素上
  2. 对比早期挂载于 document 与现版本挂载于根容器(如 root)的差异
  3. 解释切换根容器的动机,如避免多个 React 应用或与外部事件冲突
  4. 说明合成事件系统与原生事件的关联及 stopPropagation 行为差异