Задать вопрос
xoma2
@xoma2
Программист

Как прослушивать store и ререндерить компонент?

Есть компонент, которые меняет store
Конкретно это компонент который слушает resize и в зависимости от изменений вызывает dispatch.

Есть другой компонент который не связан с этим никак. А точнее Resize рендериться в моем компоненте.

Мне надо по изменению dispatch менять state.

Структура такая примерно

<Modal>   <-- тут надо отслеживать изменения
<Resize />   <-- тут происходит изменения store 
</Modal>

Пробовал передавать что то типо onResize получается либо цикл, либо is not a function. Если в onResiae не менять store
  • Вопрос задан
  • 486 просмотров
Подписаться 2 Оценить 4 комментария
Пригласить эксперта
Ответы на вопрос 1
@Roman_Kh
Из своего компонента вы dispatch вообще не должны вызывать никогда.
В Resize вы должны вызывать action, который вызывает dispatch.
Когда store выполнит обновление, он должен отправлять сообщение, допустим, RESIZE
Совершенно независимо от этого Modal должен при создании (например, в componentDidMount) подписаться на получение сообщений RESIZE от store.
Получив сообщение, Modal должен отреагировать на него, например, вызвав render, изменив свое состояние через setState или через forceUpdate().
Ответ написан
Ваш ответ на вопрос

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

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