getDerivedStateFromProps

getDerivedStateFromProps

我的React类中有一个方法,例如someMethod()。我也有一个getDerivedStateFromProps()方法,我想在其中调用someMethod()。是的,我需要在getDerivedStateFromProps中而不是在componentDidUpdate()中执行此操作,因为我确实更改了someMethod()中的状态。

someMethod() {
    this.setState({worked: true});
    return 'worked';
}

static getDerivedStateFromProps(props, state) {
    console.log(someMethod());
}


我希望显示worked的日志。

最佳答案

getDerivedStateFromProps中,您无权访问组件的实例。所以,基本上,您不能。但是您可以做的是返回一个对象以更新状态。

static getDerivedStateFromProps(props, state) {
    return { worked: true }
}

07-26 00:47