react中数据管理:react-redux和redux的使用

Posted laidans

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react中数据管理:react-redux和redux的使用相关的知识,希望对你有一定的参考价值。

---------------根模块App.js中
import Provider from ‘react-redux‘;
import store from ‘./store‘;
import Header from ‘./header/Header.js‘;

class App extends Component
render ()
return (
<Provider store=store> //Provider将store里面的数据提供给Provider包含的所有模块使用
<Header/>
</Provider>
)

---------------子模块 Header.js
import connect from ‘react-redux‘;

const Header=(props)=>
return (
<div
onClick=props.handlerClick
>计数:props.number</div>
)

const stateToProps=(state)=>
return (
number:state.header.number //从传过来的state里取数据赋值给props,因为中间叠了一层header,所以取数据的时候需要从header里面取number的值
)

const propsToDispatch=(dispatch)=>
return
handlerClick()
const action=
type:‘change_num‘

dispatch(action); //通过dispatch传action给reducer


export default connect(stateToProps,propsToDispatch)(Header); // connect将数据和子模块Header连接起来
---------------根数据store
-------------根数据store:index.js
import createStore from ‘redux‘;
import reducer from ‘./reducer.js‘;

export default createStore(reducer);
-------------根数据store:reducer.js
import combineReducers from ‘redux‘;
import headerReducer from ‘../header/reducer.js‘;

export default combineReducers( //combineReducers合并所有的子模块reducer
header:headerReducer
)
---------------子数据header里面的reducer
const defaultState=
number:1

export default (state=defaultState,action)=>
if(action.type===‘change_num‘) //根据dispatch传过来的action,对数据state进行操作
const newState=JSON.parse(JSON.stringify(state));
newState.number++;
return newState;

return state;

以上是关于react中数据管理:react-redux和redux的使用的主要内容,如果未能解决你的问题,请参考以下文章

react中数据管理:react-redux和redux的使用

是否可以在 React-Redux 应用程序中使用 Immutable.js 来比较 shouldComponentUpdate 中的道具?

react-redux状态管理器

react 中的 redux 和react-redux的区别分析

React-Redux 知识点 及 实现数据共享案例

redux和react-redux