Почему мой редуктор не получает мои действия? (Использование React & Redux)

Это мои текущие создатели действий, они работают нормально и возвращают действия как обычно. Я проверил с некоторыми журналами, он работает здесь:

export function stateToEntry() {
    return { type: types.STATE_TO_ENTRY, formState: 'entry-mode'};
}

export function stateToEdit() {
    return { type: types.STATE_TO_EDIT, formState: 'edit-mode'};
}

export function stateToDelete() {
    return { type: types.STATE_TO_DELETE, formState: 'delete-mode'};
}

Это мой текущий редуктор, который не получает мои действия. Я проверил здесь, кажется, что я даже не могу войти в консоль:

import * as types from '../actions/actionTypes';

export default function formStateReducer(state = [], action) {
    switch(action.type) {
        case types.STATE_TO_ENTRY:
            console.log('entry-mode');
            return {formState: action.formState};
        case types.STATE_TO_EDIT:
            //console.log('edit-mode');
            return {formState: action.formState};
        case types.STATE_TO_DELETE:
            //console.log('delete-mode');
            return {formState: action.formState};
        default:
            return state;
    }
}

Вот мой комбинированный редуктор. Редуктор местоположений работает нормально, но я получаю нулевое значение на моем formState, поэтому он правильно связан внутри магазина.:

const rootReducer = combineReducers({
    locations,
    formStates
});


export default rootReducer;

Что я мог пропустить?

1 ответ

Решение

Из документов: bindActionCreators... Превращает объект, значения которого являются создателями действий, в объект с теми же ключами, но с каждым создателем действий, заключенным в диспетчерский вызов, чтобы их можно было вызывать напрямую.

Итак, вы используете это неправильно, попробуйте это:

let foo = {
    location: bindActionCreators(locationActions, dispatch),
    form: bindActionCreators(formActions, dispatch)
}
// later in your code -- will dispatch that action automatically
foo.location.someActionFromLocationActionsObject()
Другие вопросы по тегам