如何在 redux-persist v5 中使用白名单?

How to use whitelist in redux-persist v5?

我尝试在 redux-persist v5 中使用白名单。

我在 Stack Overflow 上关注了 ,如下所示

persistStore(store, { whitelist: ['messages'] });

但是,我得到了错误

invalid option passed to persistStore: "whitelist". You may be incorrectly passing persistConfig into persistStore, whereas it should be passed into persistReducer.

然后我在阅读了 redux-persist readme file

之后尝试了类似下面的内容
const transform = createTransform(null, null, {
  whitelist: [
    'messages'
  ]
});

const config = {
  key: 'state',
  storage: localForage,
  transforms: [transform]
};

const reducer = persistReducer(config, rootReducer);

但它不起作用。它仍然通过 localForage 保存所有内容。

那么redux-persist v5中白名单的正确使用方法是什么?

如果您使用 redux-persist v5, you should pass the PersistConfig 作为 persistCombineReducers 的第一个参数:

const config = {
  key: 'root',
  whitelist: ['messages']
}

const reducer = persistCombineReducers(config, reducers)

注意:他们在 v5 中进行了多项更改,请仔细阅读文档以创建增强型商店,并可选择使用 PersistGate