如何在reactjs中调用stopPropagation?

时间:2016-03-10 11:06:33

标签: reactjs

我想阻止点击事件冒出来。因此我在我的代码中添加了e.stopPropagation()。我总是在控制台中出错,说:Uncaught TypeError: e.stopPropagation is not a function

在reactjs中设置stopPropagation的正确方法是什么?

      handleClick: function(index, e) {
        e.stopPropagation();

        ...

    }, 

1 个答案:

答案 0 :(得分:47)

正确的方法是使用.stopPropagation

var Component = React.createClass({
  handleParentClick: function() {
    console.log('handleParentClick');
  },

  handleChildClick: function(e) {
    e.stopPropagation();

    console.log('handleChildClick');
  },

  render: function() {
    return <div onClick={this.handleParentClick}>
      <p onClick={this.handleChildClick}>Child</p>
    </div>;
  }
});

Example

  

您的事件处理程序将传递SyntheticEvent的实例,a   围绕浏览器的本机事件的跨浏览器包装器。它有   与浏览器的本机事件相同的界面,包括   stopPropagation()和preventDefault(),但事件工作除外   所有浏览器都相同。   Event System