Магазин Redux перестает получать действия при переходе на другую вкладку браузера - PullRequest
1 голос
/ 25 марта 2020

Я использую React 16.8.6 с redux 4.0.1, но у меня проблема с хранилищем redux. Магазин перестает отправлять какие-либо действия, когда я перехожу на другую вкладку браузера.

Нормальный поток:

  1. Cli c кнопка
  2. Отправлено действие 1 (извлечь что-то)
  3. Отправлено действие 2 (сохранить что-то в БД)
  4. Отправлено действие 3 (извлечь что-то)

При переходе на другую вкладку:

  1. Cli c кнопка
  2. Действие 1 отправлено (получить что-то)
  3. Перейти на другую вкладку браузера или открыть другое приложение
  4. (приложение не получает никаких других действий)

Но когда я go вернитесь на вкладку моего приложения и обновите sh, я вижу изменения, которые action 1 и 2 должны сделать. Однако они не были перехвачены моим приложением, потому что его вкладка была неактивной.

Поскольку приложение использует передачу сообщений Firebase, я пытался соединить его с работником службы React для решения проблемы, но это не не работает.

Что мне делать? Это общая проблема с редуксом?

1 Ответ

0 голосов
/ 25 марта 2020

Вы можете использовать состояние постоянного редукса с некоторыми библиотеками, такими как (Этот подход работает, когда вы разделяете состояние также между двумя вкладками) redux-persist , с другой стороны, если вы хотите реализовать свою собственную библиотеку, вы может использовать систему персистентности, такую ​​как локальное / сессионное хранилище, Redux, rabbitMQ и т. д. c, и в этих статьях есть несколько хороших идей Состояние обмена между вкладками

...