React的合成事件

合成事件

React有自己一套独立的事件系统,就是合成事件,它模拟原生事件所有的功能。根据W3C规范来定义合成事件,兼容了所有的浏览器,拥有和浏览器原生事件相同的接口。

在react中,可以通过e.nativeEvent获取到DOM事件,比如:

{console.log(e.nativeEvent)}}>点击

React的合成事件_第1张图片

合成事件的目的是:

  1. 实现浏览器兼容,方便跨平台。react采取顶层事件机制,保证事件冒泡一致性,可以跨浏览器执行。把不同平台事件,模拟合成事件。
  2. 方便事件统一管理和事务机制。

DOM原生事件

事件流:页面中绑定了很多的事件,而页面接收事件的顺序就是事件流。

事件传播大致分为三个阶段:

  1. 事件捕获阶段
  2. 目标阶段
  3. 事件冒泡阶段

首先,当一个事件被触发的时候,顶层对象发出一个事件流&#x

你可能感兴趣的:(深入浅出react,react.js)