React将删除componentWillMountcomponentWillReceivePropscomponentWillUpdate生命周期挂钩。可以在Update on Async Rendering文章中找到更多详细信息。

我有一个关于从这些方法迁移的问题。这是一个例子:

当前,我使用nprogress在页面顶部显示进度条。它的用法如下:

export default class Page extends React.Component {
  componentWillMount() {
    Nprogress.start();
  }

  componentDidMount() {
    Nprogress.done();
  }

  render() {
    return (
      <h1>Hello, world!</h1>
    )
  }
}


在上面的示例中,我开始在安装组件之前显示进度条,并在安装组件后完成进度条。

如何迁移到新的React生命周期并保持组件正常工作?

最佳答案

使用构造函数:

export default class Page extends React.Component {
  constructor(props) {
    super(props);
    Nprogress.start();
  }

  componentDidMount() {
    Nprogress.done();
  }

  render() {
    return (
      <h1>Hello, world!</h1>
    )
  }
}

关于javascript - 实际需要componentWillMount时如何解决用例?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49817652/

10-09 21:20