React componentDidUpdate() 方法

秋山信月归

React componentDidUpdate() 方法

componentDidUpdate() 方法格式如下:

componentDidUpdate(prevProps, prevState, snapshot)

componentDidUpdate() 方法在组建更新后会被立即调用。

首次渲染不会执行此方法。

你也可以在 componentDidUpdate() 中直接调用 setState(),但请注意它必须被包裹在一个条件语句里。

以下实例使用 componentDidUpdate() 方法在组建更新后执行,组建使用 componentDidMount() 方法会在 1 秒中后发生修改操作:

class Header extends React.Component {
  constructor(props) {
    super(props);
    this.state = {favoritesite: "runoob"};
  }
  componentDidMount() {
    setTimeout(() => {
      this.setState({favoritesite: "google"})
    }, 1000)
  }
  componentDidUpdate() {
    document.getElementById("mydiv").innerHTML =
    "更新后喜欢的是 " + this.state.favoritesite;
  }
  render() {
    return (
      <div>
      <h1>我喜欢的网站是 {this.state.favoritesite}</h1>
      <div id="mydiv"></div>
      </div>
    );
  }
}
 
ReactDOM.render(<Header />, document.getElementById('root'));
版权声明:本页面内容旨在传播知识,为用户自行发布,若有侵权等问题请及时与本网联系,我们将第一时间处理。E-mail:284563525@qq.com

目录[+]

取消
微信二维码
微信二维码
支付宝二维码