Redux在React Hook中的使用及其原理

本文详细介绍了Redux在React Hooks中的使用,从Redux的基本概念(State、Action、Reducer)出发,逐步演示如何创建和改造count组件,封装Dispatch函数,编写Action和Reducer,以及如何结合React进行实际应用。通过实例解析Redux的工作流程,帮助读者理解并掌握Redux在现代React开发中的运用。
摘要由CSDN通过智能技术生成

在这里插入图片描述

Redux在React Hook中的使用及其原理

Hello, 各位勇敢的小伙伴, 大家好, 我是你们的嘴强王者小五, 身体健康, 脑子没病.

本人有丰富的脱发技巧, 能让你一跃成为资深大咖.

一看就会一写就废是本人的主旨, 菜到抠脚是本人的特点, 卑微中透着一丝丝刚强, 傻人有傻福是对我最大的安慰.

欢迎来到小五随笔系列Redux在React Hook中的使用及其原理.

浅谈Redux

下面将从what, why, how to 三个方面来说说Redux

第一问 what 什么是Redux

将一个web应用拆分成视图层与数据层, Redux就是保存其数据的一个容器, 其本质就是维护一个存储数据的对象.

  • State : 一个存放数据的容器 (一个对象)
const initState = {
   
  count: 0,
}
  • Action : 一个 want to do 的过程 (计划要做一个什么样的操作)
    • ActionType是对Action的描述, 也是连接ActionReducer的桥梁
    • 本质上是一个由ActionTypepayload(数据)组成的对象
export const increaseConstant = 'INCREASE' // ActionType

{
   
   type: increaseConstant,
   payload,
}  // Action
  • Reducer : 一个 to do 的过程 (执行Action计划的操作)
case increaseConstant: // 当 ActionType 为 'INCREASE' 时, 执行count++
  return {
   
    ...state,
    count: payload + 1
  }

第二问 why 为什么要使用Redux

当你不知道是否需要使用Redux的时候, 那就是不需要使用.

下面一组动图很好的描述了一个应用程序的开发过程, 及何时需要Redux.
图片来源及原文链接

  • 游戏初期阶段, 数据单向传递, 父传子

在这里插入图片描述

  • 游戏进入中期, 开始有少量非父子组件间需要通讯一些数据

在这里插入图片描述

  • 游戏进入后期, 开始需要大量的数据通讯

在这里插入图片描述

  • 此时, 就是Redux的用武之地了, 使用Redux后流程如下

在这里插入图片描述

第三问 how to 怎么使用Redux

在说使用方法之前, 我们先来从头到尾模拟一个Redux的过程, 只要理解原理, 使用起来那不是小菜一碟.

Let’s go, come on baby!

在这里插入图片描述

下面我们就用一个简单的计数器的例子来模拟实现一个Redux的过程:

创建一个count组件
import React, {
    useState } from 'react'

const CountItem = (props) => {
   
  const {
   
    count,
    increase,
  } = props

  return (
    <>
      {
   count}
      <button onClick={
   increase}>Co
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值