5

I tried all the commands for redux but it doesn't work:how do you think the solution is. These are the commands I tried

yarn add react-redux
yarn add reduxjs / Redux-thunk#master
npm install --save Redux react-redux
npm install redux -- save
npm i redux -- save
yarn add redux-thunk

index.jsx

import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import {createStore, applyMiddleware,compose} from 'redux';
import rootReducer from './store/reducers/rootReducer';
import {Provider} from 'react-redux';
import thunk from 'redux-thunk';
import {reduxFirestore,getFirestore} from 'redux-firestore'
import {reactReduxFirebase,getFirebase} from 'react-redux-firebase'
import fbConfig from './config/fbConfig';


const store=createStore(rootReducer,
    compose(
        applyMiddleware(thunk.withExtraArgument({getFirebase,getFirestore})),
        reduxFirestore(fbConfig),
        reactReduxFirebase(fbConfig)
    ));


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

package.json

{
  "name": "omaga-yazilim",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@testing-library/jest-dom": "^npm i --save react-router4.2.4",
    "@testing-library/react": "^9.4.0",
    "@testing-library/user-event": "^7.2.1",
    "firebase": "^7.8.1",
    "jest-leak-detector": "^25.1.0",
    "moment": "^2.22.2",
    "react": "^16.6.3",
    "react-dom": "^16.6.3",
    "react-redux": "^7.1.3",
    "react-redux-firebase": "^3.1.1",
    "react-router": "^4.4.0-beta.8",
    "react-router-dom": "^4.4.0-beta.6",
    "react-scripts": "^2.1.1",
    "redux": "^4.0.5",
    "redux-firestore": "^0.12.0",
    "redux-thunk": "reduxjs/redux-thunk#master",
    "start": "webpack-dev-server --mode development"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}
squillman
  • 13,363
  • 3
  • 41
  • 60

4 Answers4

8

I faced the same problem but I run the command line:

npm install --save redux-thunk

Souad Henane
  • 351
  • 3
  • 6
3

The simplest solution is to use our new official Redux Toolkit package. The configureStore function will automatically set up the store correctly, including adding the thunk middleware by default. Given that you're trying to use React-Redux-Firebase, you can do that by using the getDefaultMiddleware API:

const store = configureStore({
    reducer: rootReducer,
    middleware: [...getDefaultMiddleware({
        thunk: {
            extraArgument: {getFirebase,getFirestore}
        }
    })],
    enhancers: [reduxFirestore(fbConfig), reactReduxFirebase(fbConfig)]
})
markerikson
  • 63,178
  • 10
  • 141
  • 157
1

I had a similar issue with this and this is how i resolved it:

Stop the server:Ctrl C in terminal.

Open package.json and manually add:

"redux-thunk": "^2.3.0",

then in the terminal cd into the project and install redux thunk:

yarn add redux-thunk 

restart the server:

yarn start

More details about redux thunk can be found on this link:

ReduxThunk-Github

RileyManda
  • 2,536
  • 25
  • 30
0

I also had the same issue...and this is how I resolved it...

Stop the server Ctrl + C

open package.json

and remove the available redux-thunk version and replace like below...

"redux-thunk": "^2.3.0",

and then go to terminal and install the redux-thunk using following command...

npm install redux-thunk

and then start the server

npm start