在反应生命周期方法中: doc.addEventListener('onmousemove', ...不起作用,但是文档鼠标移动 = ...是。为什么?



我在这里错过了一些简单的东西,但我被难住了。

为什么 addEventListener 和 removeEventListener 函数在这些 react 生命周期方法中不起作用,但它们下面的注释掉的行却可以?

  componentDidMount(){
    document.addEventListener('onmousemove', this.handleMouseMove);
    // document.onmousemove = this.handleMouseMove;
  }
  componentWillUnmount(){
    document.removeEventListener('onmousemove', this.handleMouseMove);
    // document.onmousemove = null;
  }
  handleMouseMove(){ ... }

我可以使用文档.onmousemove = ...代码,它有效。但是为什么上面的行不起作用?我觉得我在这里错过了一些基本的东西。

任何帮助非常感谢:)

事件名称是mousemove,而不是onmousemove

onmousemove是一个事件处理程序属性

因此,正确的代码是:

document.addEventListener('mousemove', ...);
// OR
document.onmousemove = ...;

最新更新