@2890594972
2019-06-02T18:59:04.000000Z
字数 1037
阅读 887
react
redux
action, reducer, store三个包
// 通过reactDOM渲染dom
ReactDOM.render(
<Provider store={store}>
<HeaderBox></HeaderBox>
<FatherComp></FatherComp>
</Provider>
, document.getElementById("app"));
首先看下函数的签名:
connect([mapStateToProps], [mapDispatchToProps], [mergeProps], [options])
connect() 接收四个参数,它们分别是 mapStateToProps,mapDispatchToProps,mergeProps和options。
// 语义化描述用户的行为
// 定义一个更新总条数
export const TYPE = {
UPDATE_TOTAL:"UPDATE_TOTAL" //更新总条数
}
// 对外暴露一个接口
export function updateItemTotal(num,name){
return {
type: TYPE.UPDATE_TOTAL,
num: num,
name: name
}
}
// 定义初始化值
const initialState = {
num: 0
}
// 导出处理函数
export default (state = initialState, action)=>{
switch (action.type) {
case "UPDATE_TOTAL":
console.log(action.num);
return {
...state,
num: action.num,
name: action.name
}
break;
default:
return state
break;
}
}
import {createStore} from "redux"
import reducer from './../reducer/index'
// 导出store数据
export default ()=>createStore(reducer)