Как вызвать метод внутри getDerivedStateFromProps в ReactJS? - PullRequest
0 голосов
/ 04 мая 2019

У меня есть метод внутри класса React, например someMethod(). У меня также есть метод getDerivedStateFromProps(), в котором я хочу вызвать someMethod(). Да, мне нужно сделать это в getDerivedStateFromProps, а не в componentDidUpdate(), например, потому что я изменяю состояние в someMethod().

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

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

Я бы хотел, чтобы журнал worked отображался.

1 Ответ

1 голос
/ 04 мая 2019

В getDerivedStateFromProps у вас нет доступа к экземпляру компонента.Так что, в принципе, вы не можете.Но то, что вы можете сделать, это вернуть объект для обновления состояния.

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