Я создаю приложение для живого чата React/Redux с макетом боковой панели и основной области. Боковая панель содержит список входящих запросов, которые можно выбрать для предварительного просмотра чата в основной области. Когда элемент выбран, создается сокетное соединение, и приложение получает предварительный просмотр чата. Однако при нажатии кнопки для принятия чата отображается новое представление, в котором отображается дополнительная информация о выбранном элементе с дополнительными действиями, которые можно выполнить, например, продолжить разговор. Выбранный элемент также удаляется из списка входящих запросов.
Я попытался сохранить идентификатор выбранных элементов в массиве и обновить боковую панель на основе этого массива. И когда на элемент нажимают, идентификатор элемента отправляется редюсеру, который фильтрует объект диалога, который возвращает выбранный элемент, который отображается в основной области.
Однако мне не удалось обновить список входящих запросов после того, как чат был принят, чтобы единственные оставшиеся элементы можно было просмотреть и принять, а список также мог обновляться при появлении новых входящих запросов.
Как мне структурировать свой магазин Redux, чтобы эффективно справиться с этой ситуацией.
Примеры конечного результата: зона агента jivochat.com.
Спасибо.