react-redux

1.创建reducer

exports.reducer=(state, action) => {
    return state
}

2.创建store

import {createStore} from 'redux'
import reducer from '../reducer/index'

const store =  createStore(reducer)
export default store 

3.创建了两个组件ComA和ComB,在APP里引入

import React from 'react'
import store from '../src/store/'
import ComA from '../src/pages/ComA/index'
import ComB from '../src/pages/ComB/index'
import { Provider } from 'react-redux'


class APP extends React.Component {
    render() {
        return (
         <Provider store={ store } >
            <div>
                <ComA />
                <ComB />
            </div>
         <Peovider>
        )
    }
}

export default APP

4.使用

  4.1 用provider包裹需要使用数据的组件。

  4.2 在A组件内使用connect.

 

import React from 'react'
import {connect} from 'react-redux'


 class ComA extends React.Component{
    handleClick = ()=>{
        console.log(this.props)
    }
    render() {
        return (
            <button onClick={this.handleClick}> + </button>
        )
    }
}
const mapDispatchToProps = (dispatch) => {
    return {
        sendAction: ()=>{
            dispatch({
                type: 'add_type'
            })
        }
    }
}
// connect接受四个回调函数作为参数,后两个参数一是合并数据,一是connect配置一般不用
// connect('要接受数据的函数','要发送action的函数')(放入要加强的组件)
// A 是发送方 所以实现第二个参数
export default connect(null, mapDispatchToProps)(ComA)
import React from 'react'
import { connect } from 'react-redux'

 class ComB extends React.Component{
    render() {
        return(
            <buttton>1{this.props}</buttton>
        )
    }
}
const mapStateToPrpos = state => {
    return state
}
// 接收方
export default connect(mapStateToPrpos)(ComB)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值