滚动到顶部反应不适用于reactdom的findDOMNODE

时间:2017-07-23 04:13:50

标签: javascript reactjs ecmascript-6

componentDidMount() {
  this.container = document.getElementById('container')
  const containerNode = ReactDOM.findDOMNode(this.container)
  if(containerNode) containerNode.scrollTop = 0
}

当我在我的组件中应用上面的代码时没有任何反应,只是好奇这是什么错误?我没有使用ref,我需要document.getElementById('container')来做其他事情。

1 个答案:

答案 0 :(得分:1)

您应该避免使用document.getElementById。相反,您应该使用ref

中提到的render(){ <div id="container" ref={(container) => { this.container = container; }} /> }
componentDidMount() {
  this.container.scrollTop = 0
}

然后在componentDidMount中你可以做到这一点

{{1}}