Запускать mapDispatchToProps, но он не меняет свойства

На мой взгляд, если я создам Z function в mapDispatchToProps с помощью dispatch
тогда я могу использовать Z function как this.props.Z function. Это правильно?

MainPage.js

import React, {Component} from 'react'
import ReactDOM from 'react-dom'
import {connect, Provider} from 'react-redux'  

import store from '../../store'
import * as AlarmContentActions from '../../store/modules/AlarmContent'

class MainPage extends Component {

    constructor(props) {
        super(props)

    }

    showProps = () => {
        console.info(this.props)
    }

    render() {
        console.info(AlarmContentActions.increment())
        console.info(this.props)
        return(
            <>
                <button onClick = {this.showProps}>here it is</button>
            </>
        )
    }
}



const mapDispatchToProps = (dispatch) => ({
    increment: () => {
        dispatch(AlarmContentActions.increment())
    }
  })


export default connect(null, mapDispatchToProps)(MainPage)

ReactDOM.render(
<Provider store = {store}>
    <MainPage />
</Provider>, document.getElementById('main-page'))

AlarmContent.js(Структура Ducks включает в себя redux-действия и редукторы)

import {createAction, handleActions} from 'redux-actions'


const initialState = {
      num: 0
}

//define action types
const INCREMENT = 'AlarmContent/INCREMENT';

//CREATE action
export const increment = createAction(INCREMENT);

//CREATE reducers
export default handleActions({

    [INCREMENT] : (state, action) => {
        return {
            num : state.num + 1
        } 
     }
}, initialState)

Я сделал функцию increment(), которая отправляет тип действия AlarmContentActions.increment() в MainPage.js, но props имеет значение null

Запускать mapDispatchToProps, но он не меняет свойстваЗапускать mapDispatchToProps, но он не меняет свойства

Однако, когда я отправляю тип действия, который является AlarmContentActions.increment(), принудительно с помощью `redux-dev-tool ', все процедуры проходят хорошо

Запускать mapDispatchToProps, но он не меняет свойства

  1. Я думаю, что отправка с помощью redux-dev-tool хорошо означает, что я хорошо справляюсь с redux store (action, reducers), верно?

  2. Думаю, я правильно делаю mapDispatchToProps, не так ли?

Тогда что со мной не так?

@Shubham Khatri Я думаю, что export default connect(null, mapDispatchToProps)(MainPage) - это подключенный компонент, не так ли?

1Sun 24.10.2018 12:09

Он подключен, но не используется в ReactDOM.render( <Provider store = {store}> <MainPage /> </Provider>, document.getElementById('main-page'))

Shubham Khatri 24.10.2018 12:13

@ShubhamKhatri большое спасибо !! это работает хорошо!!

1Sun 24.10.2018 17:23
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
3
27
0

Другие вопросы по теме