การอัพเดท redux ด้วยการ click

โค้ดเต็มๆ ประมาณนี้

import { connect } from 'react-redux'

class Home extends React.Component {
    updateRedux = () => {
        this.props.setReduxClick('new_data')
    }

    render () {
        return <button className="btn btn-primary" onClick={this.updateRedux}>Set</button>
    }
}

const mapDispatchToProps = (dispatch) => {
    return {
        setReduxClick: (data) => {
            dispatch({type: 'UPDATE_DATA', payload: data})
        }
    }
}

export default connect(state => state, mapDispatchToProps)(Home)

อันนี้ข้ามเรื่อง การ createStore ทำ reducer ครอบ Provider ไปก่อนนะครับ

ขั้นแรก สร้าง mapDispatchToProps

const mapDispatchToProps = (dispatch) => {
    return {
        setReduxClick: (data) => {
            dispatch({type: 'UPDATE_DATA', payload: data})
        }
    }
}

อันนี้ไว้สำหรับ dispatch redux อยากจะใช้ อะไรบ้าง ก็สร้างๆ เข้าไปในนี้

พอตอนเรียกใช้ พวก function ที่เราสร้างไว้ มันก็จะถูกเรียกผ่าน props ได้เลยแบบนี้

this.props.setReduxClick('new_data')

จบครับ โครตง่าย

0
รับทราบ
0
เยี่ยม
0
แย่
0
ตลก
0
รักเลย
0
โกรธ
Beta Version v21.6.13 : ขออภัยเว็บกำลังก่อสร้าง (อีกแล้ว) แต่คราวนี้กำลังสร้างจริงจังละ