对于redux持久化的配置,我需要一点帮助。我有一个带有两个中间件的redux商店,配置可以工作,但是我不能正确地添加redux-持久化。要么我设法补水,但动作不再叫减速器,要么我有各种错误。我觉得这个顽固的医生有点差。
以下是我的当前配置:
import { createStore, applyMiddleware, compose } from 'redux';
import { persistStore, persistReducer } from 'redux-persist'
import storage from 'redux-persist/lib/storage'
import thunk from 'redux-thunk';
import logger from 'redux-logger';
import allReducer from './reducers';
export default function configureStore() {
return createStore(
allReducer,
applyMiddleware(thunk, logger)
);
} 发布于 2018-10-17 21:13:14
我终于成功了,如果有帮助的话,下面是要设置的配置:
Store.js
import { createStore, applyMiddleware, compose } from 'redux';
import { persistReducer } from 'redux-persist'
import LocalStorage from 'redux-persist/lib/storage'
import thunk from 'redux-thunk';
import logger from 'redux-logger';
import allReducer from './reducers';
const persistConfig = {
key: 'xxxx-key-xxxx',
storage: LocalStorage,
}
const persistedReducer = persistReducer(persistConfig, allReducer)
export default createStore(
persistedReducer,
applyMiddleware(thunk, logger)
);persistStore.js
import { persistStore } from 'redux-persist'
import store from './store';
export default persistStore(store);App.js
import React, { Component } from 'react';
import { Provider } from 'react-redux'
import { PersistGate } from 'redux-persist/integration/react'
import store from './stores/store';
import persistor from './stores/persistedStore';
import Router from './routes'
import './App.css';
class App extends Component {
render() {
return (
<Provider store={store}>
<PersistGate loading={null} persistor={persistor}>
<Router/>
</PersistGate>
</Provider>
);
}
}
export default App;在这里,依赖项和版本的列表
"react": "^16.5.2",
"react-dom": "^16.5.2",
"react-redux": "^5.0.7",
"react-router-dom": "^4.3.1",
"react-scripts": "2.0.5",
"redux": "^4.0.1",
"redux-logger": "^3.0.6",
"redux-persist": "^5.10.0",
"redux-thunk": "^2.3.0"目前,命名导出无法工作,因此我必须为持久化创建第二个文件,以便能够使用存储和持久化的默认导出。
https://stackoverflow.com/questions/52863138
复制相似问题