首页 > 解决方案 > 如何在 ReactJS 中调用 getDerivedStateFromProps 中的方法?

问题描述

我的 React 类中有一个方法,例如someMethod()。我也有一个getDerivedStateFromProps()我想调用的方法someMethod()。是的,我需要这样做getDerivedStateFromProps而不是componentDidUpdate()例如,因为我确实更改了someMethod().

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

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

我希望worked显示日志。

标签: javascriptreactjsgetderivedstatefromprops

解决方案


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

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

推荐阅读