Проблема Redux Объект (...) не является функцией - PullRequest
1 голос
/ 29 мая 2020
    import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux'
import { createStore } from 'redux';


function counter(state= {value: 0}, action) {
    switch(action.type) {
        default: 
        return state
    }
}


const store = createStore(counter)

ReactDOM.render(
    <Provider store={store}>

    </Provider>
, document.getElementById('root'));

Просто попробуйте запустить простейший код redux в своем проекте и не создавать ошибку Typeer Я мог бы попытаться изучить redux, и у меня есть код, который работает в песочнице кода, но в проекте я получаю ошибку Object (. ..) не является функцией

1 Ответ

1 голос
/ 04 июня 2020

Эй, чувак ... преобразуйте function в Es6, чтобы избежать проблем this., а счетчик, который является редуктором, должен вызываться в createStore(counterReducer()), также в операторе switch вам нужно вернуть новое состояние, которое почему .. return распространение состояния в новом объекте ..

ie return {...state}

import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux'
import { createStore } from 'redux';


const counterReducer = (state= {value: 0}, action) => {
    switch(action.type) {
        default:
        return {
          ...state
        }
    }
}


const store = createStore(counterReducer())

ReactDOM.render(
    <Provider store={store}>
    {....}
    </Provider>
, document.getElementById('root'));
...