Скорее всего, вам не нужно использовать getDerivedStateFromProps
: официальные документы, объясняющие, почему .
Похоже, что вам нужно обновить состояние на основе смены реквизита,в этом случае componentDidUpdate()
более подходит, но, похоже, вы реплицируете состояние на основе ваших входящих реквизитов.
Простого доступа к ним внутри вашего рендера должно быть достаточно;они не требуют сложных вычислений.Так же, как фиктивный пример:
render() {
const { userName, id } = this.props.currentUser;
const hasAuthenticated = id && userName;
return (hasAuthenticated)
? <WelcomeMessage />
: <Login />
}