本篇主要将react全家桶的产品非常精炼的提取了核心内容,精华程度堪比精油。各位大人,既然来了,客官您坐,来人,给客官看茶~~
前言
首先,本篇文章要求您对js,react等知识有一定的了解,如果不曾了解,建议您先看一下:React精髓!一篇全概括(急速)
React有props和state:
这就意味着如果是一个数据状态非常复杂的应用,更多的时候发现React根本无法让两个组件互相交流,使用对方的数据,react的通过层级传递数据的这种方法是非常难受的,这个时候,迫切需要一个机制,把所有的state集中到组件顶部,能够灵活的将所有state各取所需的分发给所有的组件,是的,这就是redux
简介
使用步骤
创建reducer
可以使用单独的一个reducer,也可以将多个reducer合并为一个reducer,即:combineReducers() action发出命令后将state放入reucer加工函数中,返回新的state,对state进行加工处理创建action
用户是接触不到state的,只能有view触发,所以,这个action可以理解为指令,需要发出多少动作就有多少指令 action是一个对象,必须有一个叫type的参数,定义action类型创建的store,使用createStore方法
store 可以理解为有多个加工机器的总工厂 提供subscribe,dispatch,getState这些方法。按步骤手把手实战。
上述步骤,对应的序号,我会在相关代码标出
npm install redux -S // 安装import { createStore } from 'redux' // 引入const reducer = (state = {count: 0}, action) => {----------> ⑴ switch (action.type){ case 'INCREASE': return {count: state.count + 1}; case 'DECREASE': return {count: state.count - 1}; default: return state; }}const actions = {---------->⑵ increase: () => ({type: 'INCREASE'}), decrease: () => ({type: 'DECREASE'})}const store = createStore(reducer);---------->⑶store.subscribe(() => console.log(store.getState()));store.dispatch(actions.increase()) // {count: 1}store.dispatch(actions.increase()) // {count: 2}store.dispatch(actions.increase()) // {count: 3}
新闻热点
疑难解答
图片精选