redux

状态管理工具
npm i redux --save三大原则 1. 单一数据源 2. state是只读的 3. 使用纯函数来执行修改只读状态的好处:一旦修改状态,必须先拿到状态的副本,在修改,这样的话状态就是可追溯的在项目中引入 import {createStore} from "redux"let initState={//状态的初始值 n:5}let reducer=(state=initState,action)=>{//state 数据//修改数据的行为return state}let store=createStore(reducer)expor default store在入口文件引入这个js文件取值方式 store.getState().n .向仓库里写入数据抛发动作 动作发给了reducer的第二个参数action 动作是一个对象 这个对象必须含有type属性store.dispatch({“type”:“自定义名字通常大写”,属性名:属性值})let initState={//状态的初始值 n:5}let reducer=(state=initState,action)=>{ if(action.type===“自定义名字”){ let newState={…state}//浅拷贝 制作副本:纯函数不能直接修改数据 newState.n=action.属性名 return newState//返回副本 上面三句话可缩写为 return {…state,n:action.属性名 }}return state}store getState()dispatch({type:playload})subscribe 订阅store里面的数据变化使用示例 当store里面的数据发生改变的时候会执行下面这个回调函数,写在constructor里store.subscribe(()=>{this.setState({n:store.getState().n})})拆分dispath

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值