Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >redux&react-redux

redux&react-redux

作者头像
世间万物皆对象
发布于 2024-03-20 11:47:47
发布于 2024-03-20 11:47:47
24900
代码可运行
举报
文章被收录于专栏:startstart
运行总次数:0
代码可运行
redux是什么

1、redux是一个专门用于做状态管理的js库(不是react插件库)。 2、它可以用在react,angular,vue等项目中,但基本与react配合使用。 3、作用:集中式管理react应用中多个组件共享的状态。 4、 redux只负责管理状态,至于状态的改变驱动着页面的展示,要靠我们自己写

什么情况下需要使用redux

1、某个组件的状态,需要让其他组件可以随时拿到(共享)。 2、一个组件需要改变另一个组件的状态(通信)。 3、总体原则:能不用就不用,如果不用比较吃力才考虑使用。

redux目录
redux
  • store.js:该文件专门用于暴露一个store对象,整个应用只有一个store对象
  • reducers文件夹:本质是一个函数,接收:preState(第一次时undefined),-action,返回加工后的状态。
  • index.js 根状态文件,将所有reducer文件做集中管理
  • actions文件夹:专门用于创建action对象
  • contant.js:该模块是用于定义action对象中type类型的常量值 ,目的只有一个:便于管理的同时防止单词写错62
方法
  • subscribe:监测redux中状态的改变,如redux的状态发生了改变,就执行一次 语法:store.subscribe( ()=>{} )
  • dispatch:传递action{type:’’,data:’’}
  • getState:获取store的值
api
  • createStore :专门用于创建redux中最为核心的store对象
  • applyMiddleware :中间件,用于配合redux-thunk(插件,需要引入)支持异步
  • combineReducers :当有多个状态时需要使用,可以将状态合并为一个对象
react-redux
react-redux目录
  • containers 用来放置容器组件和UI组件(直接将UI组件和容器组件写入一个jsx文件即可)
概念
  • UI组件:不能使用任何redux的api,只负责页面的呈现,交互等.
  • 容器组件:负责和redux通信,将结果交给UI组件
api
  • Provider : 无需自己给容器组件传递store,给根组件包裹一个 即可
  • connect:生成一个容器组件,并暴露
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//未简写
mapStateToProps(state){}
mapDispatchToProps(dispatch){}
connect(mapStateToProps,mapDispatchToProps)(UI组件)
//mapStateToprops:映射状态,返回值是一个对象,默认接收state作为参数
//mapDispatchToProps:映射操作状态的方法,返回值是一个对象,默认接收dispatch作为参数
//[备注]:容器组件中的store是靠props传进去的,而不是在容器组件中直接介入
//[备注]:mapDispatchToProps,也可以直接是一个对象,会自动注入dispatch(所以对象的方式不用写dispatch)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// 简写
connect(
  state=>({key:value}),//映射状态
  {key:xxxxxAction}//映射操作状态的方法
)(UI组件)
redux&react-redux书写流程

1、src中的index文件

引入Provider 引入store 包裹App<Provider store={store}><App/></Provider>

2、store文件

引入createStore 有异步操作引入 applyMiddleware 和引入并安装插件redux-thunk 引入合并为对象的rootReducer 导出语句export default createStore(rootReducer, applyMiddleware(thunk))

3、containers文件夹

容器组件与UI组件合并到一个文件 引入connect 引入actions中的需要用到的回调 导出connect(映射状态---mapStateToprops(state),映射操作状态的方法--mapDispatchToProps(dispatch))(UI组件)

4、contant文件

写入需要用到的常量分别导出

5、actions文件夹

引入常量 配置对象分别导出

6、reducers文件夹

引入常量 配置函数导出

书写流程规模化

这些是固定流程的处理(只用写一次) redux配置有些只用写一次的就直接提炼出来,每次直接拖入文件即可 react-redux:index文件引入Provider包裹</App>

接下来就是每次加入新文件都要做的操作了 1,centant文件中添加常量 2,新增加reducer文件和action文件 3,reducers文件夹的index文件中引入心创建的reducer文件 4,containers中添加文件写入容器和UI组件(引入action文件暴露的API) 5,最后就是connect完成联动

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-03-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
前端模块化开发--React框架(四):高级应用(redux)
代码地址 安装 Code npm install --save redux 一、 redux要点 1. redux理解 2. redux相关API 3. redux核心概念(3个) 4. redux工
MiChong
2020/09/24
1.3K0
前端模块化开发--React框架(四):高级应用(redux)
React---react-redux的使用
1).UI组件:不能使用任何redux的api,只负责页面的呈现、交互等。
半指温柔乐
2021/05/10
1.4K0
【React】211- 2019 React Redux 完全指南
https://juejin.im/post/5cac8ccd6fb9a068530111c7
pingan8787
2019/07/23
4.4K0
【React】211- 2019 React Redux 完全指南
学习react-redux,看这篇文章就够啦!
在 Redux 中,reducer 函数是用来处理状态(state)的函数。它接收两个参数:当前的状态(state)和被分发的 action,然后根据 action 的类型来更新状态并返回新的状态对象。
程序员王天
2023/10/18
6140
深入Redux架构
关于redux 之前写了一篇通过一个demo了解Redux,但对于redux的核心方法没有进行深入剖析,在此重新总结学习,完整的代码看这里。(参考了React 技术栈系列教程) 什么情况需要用redu
牧云云
2018/05/02
2.4K0
深入Redux架构
Redux 入门到高级教程
Redux 是 JavaScript 状态容器,提供可预测化的状态管理。 (如果你需要一个 WordPress 框架,请查看 Redux Framework。)
老马
2019/05/25
2.9K0
《彻底掌握redux》之开发一个任务管理平台
redux是上手react开发的必经之路,也是目前react项目中使用的最流行状态管理库。虽然我们不使用redux也可以通过react的state和父子props进行基本的数据通信和项目开发,但是对于一个大型项目而言,往往考虑的更多的是代码结构和组件之间的通信,我们需要一种很优雅且有利于扩展的方式去开发我们的复杂系统,所以这种情况下使用redux是最佳的选择。
徐小夕
2020/02/27
1.1K0
《彻底掌握redux》之开发一个任务管理平台
react基础--2
react-redux需要配合 redux使用,react-redux可实现 redux与react的连接
切图仔
2022/09/08
1.3K0
React全家桶之Redux使用
让我们闭上眼睛想想,如果用一个词描述React 和Redux 给我们留下了什么印象,我想到的不是难学,不是繁琐,而是“限制”。
一粒小麦
2019/07/18
1.4K0
React全家桶之Redux使用
像踢球一样玩转Redux和React
引言 React的核心是使用组件定义界面的表现,是一个View层的前端库,简单来说它就是一堆前端组件,view,view,view,重要的事情说三遍。 可是有了组件
yuanyi928
2018/04/02
1.4K0
像踢球一样玩转Redux和React
【taro react】---- 【使用 redux 的配置笔记】
1. 目标 学会 yarn 或 npm 安装中间件 学会配置 redux 的 store 学会 store 的接入和使用 2. 安装中间件 安装redux用到的中间件: redux react-redux redux-thunk redux-logger $ yarn add redux react-redux redux-thunk redux-logger # 或者使用 npm $ npm install --save redux react-redux redux-thunk redux-logge
Rattenking
2022/01/06
1.3K0
Redux,基础 Redux是什么?React-reduxRedux存在的问题(解决的方案)?Redux的最佳实践?Redux的实现浅析?
在系统性的学习一个东西的时候, 了解其背景、设计以及解决了什么问题都是非常必要的。
菜的黑人牙膏
2019/01/21
1.6K0
React 进阶 - React Redux
应用初始化时候,只请求一次数据,然后通过状态管理把数据存起来,需要数据的组件只需要从状态管理中‘拿’就可以了。
Cellinlab
2023/05/17
1.1K0
React 进阶 - React Redux
使用Redux制作一个TodoList
在组件化开发的 web 前端当中,经常的需要在不同的组件之间进行通信以及一些数据共享,那么我们就需要使用像 Vuex 那样的状态管理工具,在 React 当中,经常使用 Redux 来做状态管理工具。
小小杰啊
2022/12/21
4940
使用Redux制作一个TodoList
Redux入门实战——todo-list2.0实现
在之前的博客中,我写了一篇关于todo-list实现的博客,一步一步详细的记录了如何使用基础的React知识实现一个React单页面应用,通过该篇文章,能够对React入门开发有一个直观的认识和粗浅的理解。
CherishTheYouth
2020/08/12
1.4K0
Redux入门实战——todo-list2.0实现
06-React状态管理 Redux(工作流程, 核心概念, 求和案例, 异步Action, React-Redux, 多状态管理, 纯函数, 高阶函数, Redux开发者工具)
其实就是一个集中的状态管理技术, 类似于VueX, 以及后端的分布式配置中心, 在前端的文章里提后端,是不是不太好~, 但是能学习这个技术的人, 从简短的一句话中应该就已经简单的了解了这个技术,以及它的使用情况, 我就不过多写概念了, 主要写使用方式
彼岸舞
2022/08/24
2.1K0
06-React状态管理 Redux(工作流程, 核心概念, 求和案例, 异步Action, React-Redux, 多状态管理, 纯函数, 高阶函数, Redux开发者工具)
react全家桶包括哪些_react 自定义组件
对于现在比较流行的三大框架都有属于自己的脚手架(目前这些脚手架都是使用node编写的,并且都是基于webpack的):
全栈程序员站长
2022/11/18
6.1K0
react全家桶包括哪些_react 自定义组件
一文梭穿Vuex、Flux、Redux、Redux-saga、Dva、MobX
不管是Vue,还是 React,都需要管理状态(state),比如组件之间都有共享状态的需要。什么是共享状态?比如一个组件需要使用另一个组件的状态,或者一个组件需要改变另一个组件的状态,都是共享状态。
viktor
2022/09/19
5.6K0
一文梭穿Vuex、Flux、Redux、Redux-saga、Dva、MobX
【干货】从零实现 react-redux
在 React 诞生之初,Facebook 宣传这是一个用于前端开发的界面库,仅仅是一个 View 层。前面我们也介绍过 React 的组件通信,在大型应用中,处理好 React 组件通信和状态管理就显得非常重要。为了解决这一问题,Facebook 最先提出了单向数据流的 Flux 架构,弥补了使用 React 开发大型网站的不足。
winty
2020/03/31
1.8K0
【干货】从零实现 react-redux
Redux/react-redux/redux中间件设计实现剖析
在一切开始之前,我们首先要回答一个问题:为什么我们需要redux,redux为我们解决了什么问题?只有回答了这个问题,我们才能把握redux的设计思路。
Nealyang
2020/04/23
2.3K0
Redux/react-redux/redux中间件设计实现剖析
相关推荐
前端模块化开发--React框架(四):高级应用(redux)
更多 >
加入讨论
的问答专区 >
1程序员擅长1个领域
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
    本文部分代码块支持一键运行,欢迎体验
    本文部分代码块支持一键运行,欢迎体验