Redux 持久化符号不可迭代

时间:2021-02-15 14:17:35

标签: redux react-redux

我需要帮助,我正在学习 React Native。我想使用 react redux 和 redux persist。 初始状态是

const initialState = [];

当我想在减速器中添加书籍时,我返回

return [
    ...state.books,
        {
          id,
          ...action.book
        }
  ];

店铺配置

const persistConfig = { key: 'persistedReducer', storage: AsyncStorage }
const persistedReducer = persistReducer(persistConfig, reducers)
const store = createStore(persistedReducer)
let persistor = persistStore(store)
export {store, persistor}

在 App.js 中我使用 PersistGate 现在,在我向用户展示书籍的组件中,没有坚持我的道具是

{"dispatch": [Function dispatch], "state": [{"id": "<base64generatedid>", "text": "sometext", 
"title": "sometitle"}]}

使用它不是问题。但是当我使用持久化版本时,道具是

{"dispatch": [Function dispatch], "state": {"_persist": {"rehydrated": true, "version": -1}, 
"books": []}}

(只有空数组映射到 props)

地图函数function mapStateToProps(state) { return {state};}

我得到的错误是 Invalid attempt to spread non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]()

它在某处损坏以换取减速器。谢谢你的帮助

0 个答案:

没有答案