react面试题-react合成事件是什么?

react面试题-react合成事件是什么?

React 根据 W3C 规范定义了每个事件处理函数的参数,即合成事件。

事件处理程序将传递 SyntheticEvent 的实例,这是一个跨浏览器原生事件包装器。它具有与浏览器原生事件相同的接口,包括 stopPropagation()preventDefault() ,在所有浏览器中他们工作方式都相同。

React 合成的 SyntheticEvent 采用了事件池,这样做可以大大节省内存,而不会频繁的创建和销毁事件对象。

另外,不管在什么浏览器环境下,浏览器会将该事件类型统一创建为合成事件,从而达到了浏览器兼容的目的。

合成事件对象(react event)

  • 所有事件都挂在到document上
  • event不是原生的,是syntheticEvent合成事件对象
  • 和vue事件不同和dom事件也不同

react面试题-react合成事件是什么?_第1张图片

react为何要合成事件机制?

  1. 更好的兼容性和跨平台
  2. 挂在到document,减少内存消耗,避免频繁解绑
    ocument,减少内存消耗,避免频繁解绑
  3. 方便事件统一管理(如事务机制)

你可能感兴趣的:(前端面试真题,前端,html5,react)