Как организовать состояние с несколькими асинхронными запросами к одному ресурсу? - PullRequest
0 голосов
/ 25 сентября 2019

Redux noob здесь, пытаясь изучить лучшие практики

Допустим, у меня есть список задач, и я пытаюсь сделать несколько асинхронных запросов на выборку на сервер, чтобы добавить TODO.Если я нажму кнопку «Добавить задачу», скажем, 4-5 раз подряд, должен ли я отслеживать состояние каждой отдельной выборки в состоянии?

В настоящее время у меня есть организация, которая имеет редуктор для TODO, который имеетмой список TODO и статус: pending или added.Но это не совсем правильно, потому что весь редуктор todos не должен иметь этого состояния, это состояние требуется каждому отдельному запросу.Но это сбивает с толку, потому что действительно полезно хранить все состояния выборки в магазине?Разве это не может дорого обойтись в SPA, который периодически выбирает данные?

Если говорить более подробно, если бы я сделал выборки, чтобы добавить 10 TODOS в быстрой последовательности.Будет ли в моем магазине что-то похожее на приведенное ниже?

{ FETCHTODO_ID: 0, status: 'pending', payload:'foo'}
{ FETCHTODO_ID: 1, status: 'pending', payload:'foo'}
{ FETCHTODO_ID: 2, status: 'pending', payload:'foo'}
...
{ FETCHTODO_ID: 9, status: 'pending', payload:'foo'}

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

Есть какие-нибудь идеи о том, какой наилучший подход был бы здесь для организации штата / магазина?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...