如下图,组件H需要用到a组件里的数据,假设不使用Redux,那么只能通过React的props和state属性进行逐渐往上分发(H>e>b||c>a)拿到a的数据之后,又要从a组件逐级往下分发(a>b>e>h),如果只是简单的需求,也能解决问题;但是如果在比较复杂的项目中还这样,项目维护起来就会很艰难,而且代码看起来也很臃肿。

image.png

但如果使用redux,数据统一存在store里,通过store进行分发,不管哪个组件都能一键分发。

image.png

二 如何使用Redux?

redux使用需要理解下图各个模块之间的作用和关系。为了方便描述,我用A、S、R、C分别代表Action、Store、Reducers、Components

首先,S的意思代表商店(表示所有数据的存放池),A的意思为动作(表示你触发增删改查操作数据的行为),R,很明显是个名词,可以理解为商店的店员(帮助查找数据),C的意思是组件,可以理解为顾客。那么这样就很好理解了,我一个顾客C想去买一个商品(触发Action动作),就要去商店(触发S)找这个商品,我找了半天没找到,于是问了店员,店员就去帮你找到了(触发R),最后付完钱走出商店,拿到了你想要的商品(state)。

image.png

redux运行流程

使用总结:

1.资本家redux要开一个商店,店里要配店员。(使用createStore(reducer)创建store)

image.png

2.我想要买个女朋友,于是去商店了(创建一个action,并把action提交给store)

image.png

3.店员熟悉店里个各种商品,对于顾客一律是有求必应,因为柜台摆动的模型,所以顾客要什么都是拿出新的给顾客(参数state表示当前商店有的商品,参数action表示顾客提的要求,reducer中和react中的props相似,可以接受state,但不能直接修改,需要进行一个拷贝)

image.png

4.购买好了,商店的要更新商品的库存了。(

store.subscribe(方法名)监听数据变化并作出修改)

image.png

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

核心竞争力,怎么才能提高呢?

成年人想要改变生活,逆转状态?那就开始学习吧~

万事开头难,但是程序员这一条路坚持几年后发展空间还是非常大的,一切重在坚持。

为了帮助大家更好更高效的准备面试,特别整理了《前端工程师面试手册》电子稿文件。

前端面试题汇总

JavaScript

性能

linux

前端资料汇总

完整版PDF资料免费分享,只需你点赞支持,动动手指点击此处就可领取了

前端工程师岗位缺口一直很大,符合岗位要求的人越来越少,所以学习前端的小伙伴要注意了,一定要把技能学到扎实,做有含金量的项目,这样在找工作的时候无论遇到什么情况,问题都不会大。

费分享,只需你点赞支持,动动手指点击此处就可领取了

前端工程师岗位缺口一直很大,符合岗位要求的人越来越少,所以学习前端的小伙伴要注意了,一定要把技能学到扎实,做有含金量的项目,这样在找工作的时候无论遇到什么情况,问题都不会大。

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐