React面试题解析:事件机制、合成事件和React事件处理
版权申诉
90 浏览量
更新于2024-07-07
收藏 3.54MB PDF 举报
React面试题详解
React是一款流行的前端框架,掌握React知识点对于前端开发者非常重要。下面我们将详细解释React面试题中的知识点。
一、React事件机制
React并不是将click事件绑定到了div的真实DOM上,而是在document处监听了所有的事件,当事件发生并且冒泡到document处的时候,React将事件内容封装并交由真正的处理函数运⾏。这样的⽅式不仅减少了内存的消耗,还能在组件挂载销毁时统⼀订阅和移除事件。
React使用事件代理的方式,将所有的事件都统⼀绑定在了document上。这样的⽅式不仅减少了内存消耗,还能在组件挂载销毁时统⼀订阅和移除事件。
在React中,冒泡到document上的事件也不是原⽣的浏览器事件,而是由React⾃⼰实现的合成事件(SyntheticEvent)。因此,如果不想要事件冒泡的话,应该调⽤event.preventDefault()⽅法,而不是调⽤event.stopProppagation()⽅法。
二、合成事件
合成事件是React模拟原⽣浏览器事件的方式。合成事件的⽬的如下:
* 抹平了浏览器之间的兼容问题
* 实现跨浏览器开发的能⼒
合成事件有⼀个事件池专⻔来管理它们的创建和销毁。当事件需要被使⽤时,就会从池⼦中复⽤对象,事件回调结束后,就会销毁事件对象上的属性,从⽽便于下次复⽤事件对象。
三、React事件和普通的HTML事件的区别
React事件和普通的HTML事件有以下区别:
* 事件名称命名⽅式:原⽣事件为全⼩写,react事件采⽤⼩驼峰
* 事件函数处理语法:原⽣事件为字符串,react事件为函数
* React事件不能采⽤return false的⽅式来阻⽌浏览器的默认⾏为,⽽必须要明确地调⽤preventDefault()来阻⽌默认⾏为。
React事件机制和合成事件是React框架中非常重要的知识点,掌握这些知识点对于前端开发者非常重要。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-12-15 上传
2021-12-15 上传
2021-12-15 上传
2021-12-15 上传
2021-12-15 上传
工具盒子
- 粉丝: 74
- 资源: 1311
最新资源
- AccessControl-5.7-cp310-manylinux_i686.whl.zip
- teslaprep:关于准备,交付和拥有Model 3的综合指南
- 【优化算法】饥饿游戏搜索算法(HGS)【含Matlab源码 1802期】.zip
- glad包,可以正常使用,配合其他库
- 超市水果陈列货架3D效果图
- lib_sentrynative:用于C,C ++和本机应用程序的Sentry SDK
- paxquery:基于 Apache Flink 的 XQuery 处理器
- 电信设备-一种实现快速移动检测的方法和装置.zip
- 基于HTML实现的仿梦芭莎官网移动触屏版手机wap购物网站模板(css+html+js+图样).zip
- techdt.la-stats
- 【优化算法】晶体结构算法【含Matlab源码 1800期】.zip
- spark-sql-perf
- js实现的切片效果图片切换幻灯片特效源码.zip
- java代码-编写一个程序判断字符串“Tom”是否在另一个字符串“I am Tom, I am from China”中出现
- AccessControl-6.1-cp38-manylinux_aarch64.whl.zip
- Simulink 中链接集文件的三向合并要求:三向合并功能允许您合并来自两个版本的链接集文件相对于一个共同祖先 Base 文件的更新。-matlab开发