Задать вопрос
BenderIsGreat34
@BenderIsGreat34
junior front-end

Можно ли напрямую добавлять значение в state из redux?

Слетает state при переходе между табами, прикрутить componentDidMount не получается, так как мешается shouldComponentUpdate. Прописал в state значение из редакса, но можно ли так манипулировать стэйтом?
state = {
        data: this.props.counters[COUNTER_TYPE_ELECTRICITY] || null,
        isLoading: false,
        inProgress: false,
        error: null,
        activeItemIndex: 0
        ]
  • Вопрос задан
  • 239 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
Если значение уже в пропсах из стора, зачем его в стейт писать?
Ваш код похож на какойто бред. Если устанавливаете стейт в конструкторе, то пишут this.state =
если компонент функциональный то используют useState и установка стейта из пропса бессмыслена
Есть еще getDerivedStateFromProps но там юз кейсов полтора на миллион, в документации есть примечание
This method exists for rare use cases where the state depends on changes in props over time. For example, it might be handy for implementing a component that compares its previous and next children to decide which of them to animate in and out.

Пока что ваш вопрос не имеет ни какого смысла, опишите лучше проблему которую пытаетесь таким образом решить.
Ответ написан
Комментировать
@AlexlMl
Решение Вашей проблемы лежит в другой плоскости.
Попробуйте Вашу задачу решить следующим образом:
Инициализируйте компонент состоянием из store(redux).
Далее изменяйте состояние локально внутри компонента, делая setState и параллельно вызывая action, чтобы записать изменение в store.
Если честно, без контекста, не понятно что Вы делаете :)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы