0
votes

Redux Store ne crée pas

src / composants / réducteurs / index.js

import {combineReducers} from 'redux';

const tasksReducer =(state=[] , action)=>{
    switch(action.type){
        case 'ADD_TASK':
            state=state.concat(action.payload);
            break;
        case 'DELETE_TASK':
            state=state.slice();
            state.splice(action.payload,1);
            break;
    }
    return state;
},
reducers=combineReducers({
    tasks:tasksReducer
});

export default reducers;


1 commentaires

Le code a l'air bien. Votre réducteur est-il correctement injecté lors de la création de votre magasin?


3 Réponses :


0
votes

Vous ne devez pas directement muté directement l'état code>. Je n'ai pas essayé tout votre code

import {combineReducers} from 'redux';

const tasksReducer =(state=[] , action)=>{
    switch(action.type){
        case 'ADD_TASK':
       let tempArr = [...state];
       let arr = tempArr.concat(action.payload); //action.payload is an array
           return [...arr];
            break;
        case 'DELETE_TASK':
            let tempArr= [...state];
            tempArr.splice(action.payload,1);//action.payload is index
            return [...tempArr];
            break;
        default: 
            return state;
    }
};
export default combineReducers({
    tasks:tasksReducer
});


0 commentaires

0
votes

src / index.js

Voici comment j'ai importé. P>

import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
//import * as serviceWorker from './serviceWorker';
import {Provider} from 'react-redux';
import {createStore} from 'redux';
import reducers from "./reducers/index";

let store=createStore(reducers);



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


0 commentaires

0
votes

Lors de l'utilisation de Combinantducers () dans votre MapSTeTétoprops, vous devez spécifier le nom de réducteur les données que vous souhaitez venir. Donc, votre fonction MapSTeTétoProps doit ressembler à:

p>

const mapStateToProps = state =>{
  return {
    PIECE_OF_STATE: state.tasks.PIECE_OF_STATE
  }
}


0 commentaires