javascript - autoRehydrate 在 redux-persist 中有什么用,为什么它在 v5 上被删除了?

标签 javascript reactjs react-native redux redux-persist

我在 ReduxPersist 的 GitHub 页面上找不到任何内容。

我有一段代码试图理解,由于此 autoRehydrate 已被删除,我想知道应该如何使用 version 5 实现代码redux-persist 的。

import { AsyncStorage } from 'react-native';
import { applyMiddleware, createStore } from 'redux';
import { autoRehydrate, persistStore } from 'redux-persist'
import thunk from 'redux-thunk';
import reducers from '../reducers';

const middleWare = [thunk];

const createStoreWithMiddleware = applyMiddleware(...middleWare)(createStore);

 export default configureStore = (onComplete) => {
  const store = autoRehydrate()(createStoreWithMiddleware)(reducers);
  persistStore(store, { storage: AsyncStorage }, onComplete);

  return store;
};

我找到了一些教程,但它只是说这个 autoRehydrate 必须存在,但没有解释它的实际作用。

最佳答案

autoRehydrate 意味着调用 persist/REHYDRATE 操作以从磁盘读取持久化状态(您之前已持久化)这可以合并回原来的状态。

在从 v4 到 v5 的迁移指南中,他们引入了一个 PersistGate .

这会延迟应用 UI 的呈现,直到您的持久化状态被检索并保存到 redux。

因此,所有的再水化操作都将由它在后台处理。

关于javascript - autoRehydrate 在 redux-persist 中有什么用,为什么它在 v5 上被删除了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52394241/

相关文章:

javascript - 如何使用JAVASCRIPT从输入标签获取值,输入标签的值是使用php从mysql数据库获取的

javascript - Chrome 使用 Window.Open 打开选项卡

react-native - 如何使用具有 arrayBuffer 响应类型和 React Native 的 Fetch api?

javascript - 如何指定数组索引?

javascript - 设置数组中特定对象的状态

reactjs - 此版本不符合 Google Play 64 位要求 React Native 应用程序

javascript - ESP8266 与 Socket.io 的 Socket 连接

javascript - 修改子类时,Firefox 似乎会放弃自动换行样式

javascript - 无法使用 angularjs 读取 json

javascript - 如何在 Material-UI Circular Progress 中添加额外的描边