DOM事件流下的性能优化:事件委托
把多个子元素的同一类型的监听逻辑合并到父元素上,通过一个监听函数来管理的行为。
点击事件最终都会被冒泡到他们共同的父元素,通过父元素e.target拿到实际触发事件的那个元素。
在底层磨平了不同浏览器的差异,在上层面向开发者暴露统一的,稳定的,与原生时间相同的事件接口,虽然合成事件并不是原生DOM事件,但它保存了原生事件的引用。
最后绑定到document上的这个统一的事件分发函数其实就是dispatchEvent。
- 合成事件符合w3c规范,在底层磨平了不同浏览器中的差异,在上层面向开发者暴露同一的,稳定的,与dom原生事件相同的事件接口。
- 自研事件系统使React,牢牢把握住了事件处理的主动权
- 我们造轮子很多时候不是因为别人的轮子不好,而是因为别人家的轮子没有办法匹配我们的场景