对在 React 中使用合成事件的困惑



我正在学习 React,并遇到了合成事件及其好处这个术语。我发现有一个问题,React 的合成事件与 addEventListener 有什么优势吗?之前在平台上问过这个问题,但让我有点困惑,因此决定要求澄清。首先,"合成事件只是正常事件的包装器。它们的存在是为了在浏览器不一致之间提供一个通用接口",所以问题是综合事件旨在解决浏览器具有什么样的不一致。其次,"合成事件更快"问题是,例如,我们有 5 个输入的 onChange 事件和 3 个按钮的 onClick 事件,这是否真的要归功于合成事件,只有一个 onChange 和一个 onClick 附加到 document.body 并且例如,当我们单击一个按钮时,侦听器仅在我们单击该按钮时才附加到单击的按钮?

综合事件旨在解决浏览器具有什么样的不一致。

React 规范化事件,以便它们在不同的浏览器中具有一致的属性

例如,MouseEvent.clientX可能返回longdouble类型。

确实,由于合成事件,只有一个onChange和一个onClick附加到document.body,例如,当我们单击一个按钮时,只有当我们单击该按钮时,侦听器才会附加到单击的按钮

您可以创建一个示例并在开发工具中对其进行调试以对其进行验证。

最新更新