Как устранить неоднозначность событий магазина при использовании Reflux или Flux?

Последние пару дней меня что-то беспокоило, и я не могу найти решение, которое мне нравится. Я использую рефлюкс, но я думаю, что это применимо и к ванильному флюсу.

Итак, скажем, у меня есть React ComponentOne, который вызывает действие потока, чтобы опубликовать некоторые данные формы в API для создания вещи.

Мой магазин запускает событие "Хорошо, вещь отправлена", а затем через некоторое время запускается событие "Хорошо, вещь создана".

Как мой ComponentOne должен устранять эти события? ComponentTwo мог вызвать то же действие, и мы не знаем, какое событие Thing-POSTed соответствует какому компоненту.

Возможно, данные ComponentOne приводят к событию сбоя, в то время как ComponentTwo приводит к завершенному событию... у нас есть два события, оба из которых являются вероятными событиями, ожидаемыми обоими компонентами, и не имеют очевидного способа определить, что есть что.

1 ответ

Вы можете поддерживать состояние изменений данных API внутри соответствующего Магазина, например, isLoading, isLoaded и необязательную отметку времени. Затем внутри события View onChange получите текущее состояние из Store и обновите соответствующий View текущим состоянием.

см. соответствующее решение - Вызов другого действия на основе результатов другого действия в React JS

Другие вопросы по тегам