Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用带有react redux和redux PERSISTER的connect_Javascript_Reactjs_React Redux - Fatal编程技术网

Javascript 使用带有react redux和redux PERSISTER的connect

Javascript 使用带有react redux和redux PERSISTER的connect,javascript,reactjs,react-redux,Javascript,Reactjs,React Redux,我的react redux和redux PERSISTER安装程序出现以下错误: 上述错误发生在组件中:in Connect(应用程序)(由创建) 路由(由withRouter(连接(应用))创建)中的 路由器(由BrowserRouter创建)中的withRouter(连接(应用))位于 持久化网关提供程序中的BrowserRouter 我有如下设置: store.js import {applyMiddleware, createStore} from 'redux'; import {pe

我的react redux和redux PERSISTER安装程序出现以下错误:

上述错误发生在组件中:in Connect(应用程序)(由创建) 路由(由withRouter(连接(应用))创建)中的 路由器(由BrowserRouter创建)中的withRouter(连接(应用))位于 持久化网关提供程序中的BrowserRouter

我有如下设置:

store.js

import {applyMiddleware, createStore} from 'redux';
import {persistStore,persistCombineReducers} from 'redux-persist';
import storage from 'redux-persist/es/storage' // default: localStorage if web, AsyncStorage if react-native

import { logger } from 'redux-logger';
import thunk from 'redux-thunk';
import promise from 'redux-promise-middleware';
import reducer from './reducers'

const middleware = applyMiddleware(promise(), thunk, logger);

const config = {
  key: 'root',
  storage,
};

const reducers = persistCombineReducers(config, {reducer});

export const configureStore = () => {
  const store = createStore(reducers, middleware);
  const persistor = persistStore(store);
  return { persistor, store };
};
index.js

import React from 'react';
import ReactDOM from 'react-dom';
import {BrowserRouter} from 'react-router-dom';
import {Provider} from 'react-redux';
import Bootstrap from 'bootstrap/dist/css/bootstrap.css';
import './css/app.css';
import App from './containers/App';

import { PersistGate } from 'redux-persist/es/integration/react'
import configureStore from './store';
const { persistor, store } = configureStore()


ReactDOM.render(
  <Provider store={store} >
    <PersistGate persistor={persistor}>
    <BrowserRouter>
      <App/>
    </BrowserRouter>
  </PersistGate>
  </Provider>,
  document.getElementById('root')
);
更新1

完整控制台日志

更新2

这是申报减速器的正确方式吗?它工作得很好,没有重复

authReducer.js

export default function reducer(state = {
  isAuthenticated: false
}, action) {
...
}
更新3

重新水化控制台日志

更新4

index.js(位于reducers文件夹中)


因此,问题是不应该同时使用CombineReducer和PersisteCombineReducer。类似的情况也可以在这里找到

你的app.js似乎被截断了或是什么..我更新了它,但我认为问题不在缺少的代码中..也许它在控制台中指定了有关错误的更多细节?应该有第二个信息,我suppose@DanielKhoroshko添加了完整的logIt,看起来auth reducer缺少初始状态?
export default function reducer(state = {
  isAuthenticated: false
}, action) {
...
}
import { combineReducers } from 'redux';
import user from './userReducer';
import auth from './authReducer';


export default combineReducers({
  user,
  auth
})