В этой статье рассказывается, как получать данные из API с помощью React Typescript, Redux, React Hooks в функциональном компоненте React

Прежде чем читать эту статью, я предполагаю, что у вас есть некоторые знания о React, Redux, React-Hooks и React. функциональный компонент

давайте начнем, выполнив следующую команду в командной строке, чтобы создать реагирующее приложение с именем my-app

npx create-реагировать-приложение мое-приложение - машинописный текст шаблона

Это создаст ваше реагирующее приложение с именем my-app с поддержкой машинописного текста. Затем в папке my-app выполните следующие команды в командной строке.

npm install @reduxjs/toolkit react-redux
npm install redux

эти команды установят избыточность в вашем приложении

Откройте проект реакции в вашем любимом редакторе кода и запустите команду

запуск нпм

эта команда запустит ваш реактивный проект в порту http://localhost:3000/

После этого создайте папку с именем redux в src/Redux, а затем создайте в ней следующие файлы соответственно.

commentReducer.ts
rootReducer.ts
store.ts

поместите следующий код в соответствующие файлы

комментарийReducer.ts

getCommentsAsync используется для извлечения данных из API, а фрагмент комментариев используется для хранения данных в состоянии массива комментариев.

rootReducer.ts

корневой редюсер — это место, где мы объединяем все редукторы

store.ts

Хранилище — это контейнер состояния, в котором хранится состояние приложения.

После этого перейдите к файлу index.tsx и деформируйте компонент вашего приложения с помощью провайдера и передайте в него свой магазин, как это

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

теперь мы используем это глобальное состояние комментария внутри нашего основного компонента, для этого вам нужно создать папку Main в src/Main, затем создать в ней файл Main.tsx и поместить в него следующий код.

в этом компоненте Main.tsx useSeletor используется для доступа к глобальному состоянию комментария, а useDispatch используется для отправки действия

наконец, импортируйте этот компонент Main.tsx в файл app.tsx и wola ! вы успешно использовали React Typescript, используя Redux, React Hooks и функциональный компонент для получения данных из API

наконец, ваш App.tsx будет выглядеть следующим образом.

полный код проекта доступен здесь