У меня есть несколько сложное веб-приложение React / Redux, которое имеет много представлений одновременно (и динамически), обращающихся к одному и тому же типу / другим идентификаторам данных из API веб-службы / REST, например, одно из них обрабатывает /my-resource/1
, другое можетhandle /my-resource/2
, а третий - общий, менее подробный список из /my-resource
.Объекты из /my-resource/: id
немного сложны с некоторыми подсписками (каждый с дополнительными данными на основе идентификаторов, которые могут быть обновлены / добавлены) и другими данными.
Каков наилучший подход к работе с loading
состояние для запросов, таких как:
POST /my-resource/:id/nested-resource/:id
PUT /my-resource/:id/another-nested-resource/:id
PATCH /my-resource/:id
Смотри, что я мог бынеобходимо обновить данные из объекта в целом (например, описательный статус) или добавить / обновить / удалить некоторые данные из подсписка.Я хотел бы , чтобы показать отдельные индикаторы загрузки, не блокируя все это, но я открыт для простоты (или, возможно, даже использую альтернативу Saga).
Мой текущийследующие идеи:
- Передача обратного вызова / обещания, которое будет вызывать / разрешать каждая сага;
- Оставить все
loading
состояния в хранилище; - Обнаружение измененийиз реквизита через
getDerivedStateFromProps
Есть еще идеи?Или я должен просто сохранить это и использовать общее состояние loading
?