我尝试在redux-persist v5中使用白名单。
我在Stack Overflow上关注了this answer,如下所示
persistStore(store, { whitelist: ['messages'] });
然而,我收到了错误
传递给persistStore的无效选项:"白名单"。您可能错误地将persistConfig传递给persistStore,而它应该传递给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中使用白名单的正确方法是什么?
答案 0 :(得分:3)
如果您使用redux-persist v5,则应将PersistConfig作为persistCombineReducers
的第一个参数传递:
const config = {
key: 'root',
whitelist: ['messages']
}
const reducer = persistCombineReducers(config, reducers)
注意:他们在v5中进行了一些更改,仔细阅读文档以创建增强的商店,并可选择使用PersistGate。