react合成事件
引入合成事件的原因
- 抹平不同浏览器api差异
- 减少注册事件产生的内存开销
事件绑定位置
React <= 16版本,事件绑定到document
React >= 17 版本,事件绑定到root组件
react <=16 合成事件执行顺序
bash
document原生捕获
父元素原生捕获
子元素原生捕获
子元素原生冒泡
父元素原生冒泡
父元素合成事件捕获
子元素合成事件捕获
子元素合成事件冒泡
父元素合成事件冒泡
document原生冒泡
react>=17 合成事件执行顺序
bash
document原生捕获
父元素合成事件捕获
子元素合成事件捕获
父元素原生捕获
子元素原生捕获
子元素原生冒泡
父元素原生冒泡
子元素合成事件冒泡
父元素合成事件冒泡
document原生冒泡