reactjs - 在挂载或更新时 react addEventListener?

标签 reactjs

简单的问题,我应该在每次更新时添加一个新的监听器,还是仅在初始渲染时添加一个新的监听器。我不明白 Shadow dom 是如何工作的,以及我是否需要在每次渲染后添加它

谢谢

最佳答案

所有事件都在here中:

非常简单。 React DOM 是浏览器 DOM 的抽象,浏览器 DOM 也是页面元素的抽象。所以 React DOM 是抽象的抽象。

我们在 React 中拥有的所有事件都不是 native 浏览器事件。它们被称为合成事件。事件系统是原生浏览器事件的包装器,以支持平台独立性。

使用 React.Component 语法定义 React 组件后,您还可以自由设置任何事件监听器,如下所示:

// somewhere inside render
return (
    <a href="#" onClick={handleClick}>
      Click me
    </a>
);

此代码将使用 React.createElement 进行渲染,并将保留在 React DOM 中。

如果您检查组件生命周期,您会发现 render() 处于挂载和更新状态。

enter image description here

希望这能满足您的需求。

关于reactjs - 在挂载或更新时 react addEventListener?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41973520/

相关文章:

javascript - ReactJs 警告 : Mutating `style` is deprecated. 考虑事先克隆它

javascript - Chrome react 扩展

javascript - requireNativeComponent : "RNSScreenStackHeaderConfig" was not found in the UIManager when running android app

node.js - 所有 React Router 和 hashHistory 路由都重定向到同一组件

javascript - 在 React Web 应用程序中集成 firebase 时获取 'permission-denied'

javascript - react 事件层次问题

javascript - React Native jest 26 到 jest 27 升级很痛苦,超时和动画

reactjs - 单击 React 中的按钮后创建 PDF 文档

android - 基本的 react native 应用程序不显示任何文本,仅在模拟器上显示带有应用程序名称的白屏

javascript - 将其中一个 child 的变化传达给 parent 的 parent