React Redux 记数器
发布时间:2020-12-15 20:35:01 所属栏目:百科 来源:网络整理
导读:npm init react-app countercd counternpm install 将 src/index.js 改为 import React from ‘react‘;import { createStore } from ‘redux‘import { connect,Provider } from ‘react-redux‘import ReactDOM from ‘react-dom‘;// action creatorconst
npm init react-app counter cd counter npm install 将 import React from ‘react‘; import { createStore } from ‘redux‘ import { connect,Provider } from ‘react-redux‘ import ReactDOM from ‘react-dom‘; // action creator const CountAction= { increment : {type: ‘INCREMENT‘},decrement : {type: ‘DECREMENT‘} } // reducer function counter(state = 0,action) { switch (action.type) { case CountAction.increment.type: return state + 1 case CountAction.decrement.type: return state - 1 default: return state } } let store = createStore(counter) // presentational component const counterCreator = ({ number,onClick }) => ( <div> <div>{number}</div> <button onClick={() =>{onClick(‘increment‘)}}> Increase </button> <button onClick={() =>{onClick(‘decrement‘)}}> Decrease </button> </div> ) const mapStateToProps = state => { return { number: state } } const mapDispatchToProps = (dispatch) => { return { onClick: clickType => { dispatch(CountAction[clickType]) } } } // container const Counter = connect(mapStateToProps,mapDispatchToProps)(counterCreator) ReactDOM.render( <Provider store={store}> <Counter /> </Provider>,document.getElementById(‘root‘) ) 运行 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容