Реагировать на ловушку компонента только для обновления реквизита (а не состояния) - PullRequest
0 голосов
/ 17 мая 2018

Есть поведение, которое я хочу запустить, когда и только когда реквизиты для моего компонента изменились. В прошлом я использовал componentWillReceiveProps, но с текущей документацией это кажется устаревшим. Документы, похоже, указывают на то, что componentDidUpdate - это новая рекомендация, однако она срабатывает при любом обновлении, включая изменение состояния. getDerivedStateFromProps также упоминается, но это должен быть статический метод.

Я мог бы написать какой-нибудь код для прохождения через все prevProps и this.props, но это кажется повторяющимся.

1 Ответ

0 голосов
/ 17 мая 2018

Не видя код, я предполагаю, что правильным подходом будет использование getDerivedStateFromProps для обновления состояния после изменения реквизита, а затем изменение этого состояния вызывает желаемое поведение.
Я не могу придумать причину, по которой следует избегать использования состояния для обновления компонента, в этом суть реакции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...