Представим есть 20 эндпоинтов, которые возвращают данные, которые успешно должны быть расшарины на весь проект. Так же данные имеют сложную структуру вложенностей. Так же для усложнения нужно делать например некий запрос только после ответа с определённого ендпоинта с использованием данных из ответа первого.
если взять редакс, то все вызовы выносятса в саги, или эпики, или санки, где легко сделать второй запрос автоматом после первого,
для вытаскивания данных из нужного слоя вложенности юзаем селекторы,
был опыт тестирования чат бота на реакте, так там саги выполняли по 3-4 запроса последовательно, и была очень нехилое разветвление логики
Теперь я пытаюсь представить как это сделать на контексте и редьюсере, и как-то сложно выходит.
Я конечно могу очень сильно ошибаться, но для каждого кейса своё решение, если это простая апка, с простым набором данных, с минимум апиколов, то пожалуйста, если это что-то большое и сложное, как чат бот, то логика общения с апишкой должна быть в абстрактном слое отдельно от view представления, т.е. в редаксе.
Я бы все эндпоинты повесил на Lambda Function, а на фронт отдал красивый GraphQL API на AppSync