skip to Main Content

For my react-native project i encountered this error after long time of RnD i am still nowhere i dont know what is causing this issue,

I read all the open and closed issues on react-native, redux, react-redux and all the other libraries i was using. I even tried creating a new project with no code in it but redux setup and the issue was still there.

Following is the code of my package.json dependencies :

"dependencies": {
    "@react-native-async-storage/async-storage": "^1.21.0",
    "react": "18.2.0",
    "react-native": "0.73.0",
    "react-redux": "^9.0.2",
    "redux": "^5.0.0",
    "redux-logger": "^3.0.6",
    "redux-persist": "^6.0.0",
    "redux-thunk": "^3.1.0"
  },

—> App.js :

import {store, persister} from './src/redux/store';
import {Provider} from 'react-redux';
import {PersistGate} from 'redux-persist/lib/integration/react';

import {View, Text} from 'react-native';

const App = () => {
  return (
    <Provider store={store}>
      <PersistGate persistor={persister}>
        <View
          style={{
            flex: 1,
            alignItems: 'center',
            justifyContent: 'center',
          }}>
          <Text
            style={{
              color: 'black',
            }}>
            App
          </Text>
        </View>
      </PersistGate>
    </Provider>
  );
};

export default App;

—> store.js :

import {createStore, applyMiddleware} from 'redux';
import AsyncStorage from '@react-native-async-storage/async-storage';
import {persistStore, persistReducer} from 'redux-persist';

import reducers from './reducers';
import middleware from './middlewares';

const persistConfig = {
  key: 'root',
  storage: AsyncStorage,
  blacklist: [],
};

const pReducer = persistReducer(persistConfig, reducers);

const store = createStore(pReducer, applyMiddleware(...middleware));

const persister = persistStore(store);

export {store, persister};

—> middlewares.js :

import {createLogger} from 'redux-logger';
import thunk from 'redux-thunk';

const middleware = [];
const logger = createLogger();

middleware.push(logger, thunk);
// commiting logger for release
// middleware.push( thunk);

export default middleware;

2

Answers


  1. Could you try modifying this one line, it could be due to no default export being present!

    —> store.js :

    export default {store, persister};
    
    Login or Signup to reply.
  2. I was facing this same issue and nothing worked then I moved back to older versions of all redux related libraries and everything started working perfectly fine here is my dependencies

    "dependencies": {
    "@react-native-async-storage/async-storage": "^1.21.0",
    "react": "18.2.0",
    "react-native": "0.72.5",
    "redux": "^5.0.0",
    "react-redux": "^8.1.3",
    "redux-logger": "^3.0.6",
    "redux-persist": "^6.0.0",
    "redux-thunk": "^2.4.2",
    },

    hope it works for you too.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search