MyComponent
import React, {Component} from 'react';
export default class MyComponent extends Component {
    render() {
        return (
            <div>
                <p>{this.props.count}</p>
                <button onClick={this.props.add}>加一</button>
                <button onClick={this.props.substract}>减一</button>
                <button onClick={this.props.toZero}>置零</button>
            </div>
        );
    }
}
reducer
function reducer(state={
    count:10
},action) {
    switch (action.type) {
        case 'add':
            return {
                ...state,
                count: state.count+1
            }
        case 'substract':
            return {
                ...state,
                count: state.count-1
            }
        case 'toZero':
            return {
                ...state,
                count: 0
            }
        default:
            return state
    }
}
export default reducer;
App
//state/props
import myComponent from "./myComponent";
import {connect} from 'react-redux'
function mapStateToProps(state) {
    return{
        count:state.count
    }
}
//function
function mapDispatchToProps(dispatch) {
    return{
        add:()=>dispatch({
           type:'add'
        }),
        substract:()=>dispatch({
            type:'substract'
        }),
        toZero:()=>dispatch({
            type:'toZero'
        })
    }
}
//connect  联系在一起的语法
const App = connect(mapStateToProps,mapDispatchToProps)(myComponent)
export default App
index
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
import {Provider} from "react-redux";
import {createStore} from "redux";
import reducer from "./reducer";
//创造store工厂
const store = createStore(reducer)
ReactDOM.render(
    <Provider store={store}>
        <App />
    </Provider>,
    document.getElementById('root')
)