Reactjs事件处理程序未触发容器中的元素,以防止事件冒泡

时间:2015-04-23 06:56:16

标签: reactjs

我正在使用地图库的反应,我使用react来渲染地图库提供的容器中的元素。

问题是容器阻止事件冒泡,我checkout reactjs源代码发现事件发射器侦听html文件并依赖事件冒泡来调度事件。

如何让onClick处理程序工作?我目前手动添加事件,但不认为它是一种优雅的方式。

<body>
  <container preventBubbling>
    <ReactElement onClick={this.handleClick}/>
  </container>
</body>

1 个答案:

答案 0 :(得分:1)

正如您所说,React依赖于事件冒泡而不是将事件处理程序直接附加到您想要事件的任何DOM节点。这是React的一个组成部分,如果不在componentDidMount中手动附加事件处理程序,则无法避免。并在componentWillUnmount中手动删除它们。

取消地图库冒泡的原因是什么?我会尝试删除该取消,看看它是否有效。