从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)

本文详细介绍了如何从零开始搭建一个 Typescript + React 开发的脚手架,包含如何添加 Redux 以及 React Router 的环境。

本文代码地址:ts-react-redux

建议将代码拉下来之后,配合本文一起查看,效果更佳。

代码下载命令:git clone https://github.com/vettel-qin/ts-react-redux.git

相关文章目录

从零开始,一步一步搭建Typescript + React + Redux项目——创建项目结构(一)

从零开始,一步一步搭建Typescript + React + Redux项目——开发环境配置(二)

从零开始,一步一步搭建 Typescript + React + Redux项目——集成React(三)

从零开始,一步一步搭建 Typescript + React + Redux项目——集成Redux(四)

从零开始,一步一步搭建 Typescript + React + Redux项目——项目打包(五)

从零开始,一步一步搭建 Typescript + React + Redux项目——团队合作规范(六)

1、安装redux和react-redux 这里我们不需要安装@types/redux,因为Redux已经自带了声明文件(.d.ts文件)

yarn add redux react-redux @types/react-redux -S

2、添加actions

(1)、在src下新建constants目录并在此目录下创建index.ts文件,然后在文件中添加所需的消息类型

constants/index.ts

​​

从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)_第1张图片

(2)、在src下新建actions目录并在此目录下创建index.ts文件,然后创建这些 actions 的函数

actions/index.ts

3、添加reducer

、在src下新建reducers目录并在此目录下创建index.ts和todoList.ts文件,然后创建这些 actions 的函数

reducers/todoList.ts            ​​

从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)_第2张图片

reducers/index.ts

​​

4、添加store

store是保存数据的地方,整个应用只有一个store。Redux提供了createStore函数来生成store。            ​​

从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)_第3张图片

5、创建展示组件

(1)、在components下新建AddTodo目录并在此目录下创建index.tsx文件            ​​

从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)_第4张图片


(2)、在components下新建TodoItem目录并在此目录下创建index.tsx文件            ​​

从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)_第5张图片


(3)、在components下新建TodoList目录并在此目录下创建index.tsx文件            ​​6、创建容器组件

从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)_第6张图片

在src下新建container目录并在此目录下创建home目录,然后创建index.tsx文件。

关键点是react-redux的connect函数,connect可以将我们的Home组件转换成一个容器,通过以下两个函数:

a、mapStateToProps将当前store里的数据以我们的组件需要的形式传递到组件。

b、mapDispatchToProps利用dispatch函数,创建回调props将actions送到store。

            ​​

从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)_第7张图片

7、创建store

回到src/entries/index.tsx,要把所有的东西合到一起,我们需要创建一个带初始状态的store,并用我们所有的reducers来设置它。

并且使用 react-redux 的 Provider 将 props 和 容器连接起来

​​

从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)_第8张图片

8、redux中间件之redux-thunk

redux-thunk是dispatch到达reducer之前,进行一些额外的操作,如日志记录、创建崩溃报告、异步接口等

安装redux-thunk  yarn add redux-thunk -D

在store目录下index.ts,写入如下框内代码:


从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四)_第9张图片

文章及代码中如有问题,欢迎指正,谢谢!

你可能感兴趣的:(从零开始,一步一步搭建Typescript+React+Redux项目——集成Redux(四))