Я новичок в React и хочу понять отличие от классического MVC. Я хочу создать простые компоненты, которые изначально загружают некоторые данные и отображают, скажем, сетку. При изменении состояния или реквизита он перезагрузит данные и повторно отрендерит.
Как лучше всего реагировать на два варианта ниже?
использование событий жизненного цикла для загрузки данных, обновления некоторого состояния и рендеринга, в то время как в другом событии будет отображаться некоторая непрозрачность загрузки.
Работать с редуксом и реагировать-редуксом? но во всех примерах я не вижу вызовов API. Это роль промежуточного программного обеспечения (Thunk?)?
Будет соответствующее объяснение.





Оба подхода верны. Это зависит от вашего варианта использования. Если вы можете избежать использования избыточности в своем приложении, используйте методы жизненного цикла для выполнения вызовов API (также называемых подписками в документации по реакции). Если вы считаете, что в вашем приложении много компонентов, и разные компоненты должны иметь общее состояние, используйте избыточность.
Вы также должны посмотреть на хуки React https://reactjs.org/docs/hooks-reference.html Вы можете использовать эффект-хук https://reactjs.org/docs/hooks-effect.html для выполнения вызовов API и обновления состояния вашего компонента.
Обновлять:
И Thunk, и Sage используются для управления побочными эффектами в вашем приложении (выполнение вызовов API отсюда). Я использовал сагу, я мало знаю о thunk.
Как бы вы использовали redux-saga: Скажем, если вы хотите получить некоторые данные для отображения при нажатии кнопки, вот как это работает:
Вы можете пройти это руководство, чтобы узнать больше https://redux-saga.js.org/docs/introduction/BeginnerTutorial.html
Однако можете ли вы объяснить, что такое Thunk?
Объяснение было слишком большим для комментария. Я обновил свой ответ с объяснением.
да. Только что посмотрел видео с конференции React 2018, где они представили хуки. Это просто способ сделать то же самое с функциональными компонентами.