Reactjs中的鼠标滚轮事件

Oli*_*ins 12 reactjs

你如何在reactjs中获得鼠标滚轮事件?

我试过onWheel

  render: function() {
    return <div onWheel = {this.wheel} >
       < /div>;
  },
Run Code Online (Sandbox Code Playgroud)

我试过onScroll

  render: function() {
    return <div onScroll = {this.wheel} >
       < /div>;
  },
Run Code Online (Sandbox Code Playgroud)

但这些事件都没有被提起.看下面的小提琴:

https://jsfiddle.net/812jnppf/2/

Nev*_*sis 7

首先,你的div是0高度,所以你不要滚动它.您不必绑定它,因为它是一个类(而不是es6反应组件).只需使用onWheel事件中的event参数调用该函数:

https://jsfiddle.net/812jnppf/9/

render: function() {

   return <div style={{height:300, width:300}} onWheel = {(e) => this.wheel(e)} >      < /div>;
},
Run Code Online (Sandbox Code Playgroud)

当然,您必须使用var或in css清理代码以设置div的样式.

编辑:我把它设置在onWel而不是onScroll(女巫不存在我猜?如果你知道的话,确认一下).我看到一篇关于向你的组件添加滚动事件的帖子很简单:https://stackoverflow.com/a/29726000/4099279