首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防止默认onpaste

防止默认onpaste
EN

Stack Overflow用户
提问于 2015-12-24 06:32:48
回答 1查看 1.8K关注 0票数 3

我正在尝试在React中构建一个自定义的粘贴事件。但是,我有一个问题,如果我使用React事件,event.preventDefault()将在默认操作发生后运行。

代码如下:

代码语言:javascript
复制
render() {
return (
  <div
  className='compositionText'
  onPasteCapture={this.handlePaste}>
  </div>
);
}

我已经成功地对DOM事件侦听器执行了同样的操作:

代码语言:javascript
复制
componentDidMount() {
this.getDOMNode().addEventListener('paste', this.handlePaste, true);
},

谁能告诉我为什么第一种解决方案不起作用,以及我如何用React的方式来实现这一点?

更新:我想补充说,如果有什么改变的话,我正在使用该div中的Trix编辑器。

EN

回答 1

Stack Overflow用户

发布于 2015-12-26 05:32:40

看起来这可能是Trix编辑器的一个问题,因为我可以在这里获得onPasteCapture的工作版本,https://jsfiddle.net/Pyloid/69z2wepo/25126/

代码语言:javascript
复制
var Hello = React.createClass({
    handlePaste: function(e) {
        e.preventDefault();
      console.log(e);
    },

        render: function() {
        return <input type="text" onPasteCapture={this.handlePaste} />;
    }
});

ReactDOM.render(
    <Hello name="World" />,
  document.getElementById('container')
);

打开控制面板,查看已注销的捕获内容。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34444745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档