ES Lint在构造函数变量上抛出no-unused-vars错误

时间:2017-08-01 14:05:26

标签: reactjs eslint

我有一个看起来像这样的组件:

class NavPane extends Component {
  constructor(props) {
    super(props);
    let lastX = 0;
  }
  NavOnTouchStart = (e) => {
    this.lastX = e.touches[0].clientX;
  }
  NavOnTouchMove = (e) => {
    const currentX = e.touches[0].clientX;
    if (currentX > this.lastX + 10) {
      this.props.toggle();
    }
    this.lastX = currentX;
  }
  render() {
    return (
      <Collapse
        ...
      </Collapse>
    );
  }
}

export default onClickOutside(NavPane);

这在执行时运行良好,但ES Lint似乎并不同意。它不断在变量 lastX

上抛出以下错误
  

21:9错误&#39; lastX&#39;被赋值但从未使用过   没有未使用的-VARS

有人可以帮我理解这里发生了什么吗?我确实认识到 const 作用于定义变量的块,这就是为什么它会抛出错误,因为我不是< em>在构造函数中使用。但是,当我使用 var 时,ES Lint也会瘫痪。

1 个答案:

答案 0 :(得分:1)

试试这个:

  constructor(props) {
    super(props);
    this.lastX = 0;
  }