react-native - 如何正确使用 redux-persist-transform-filter
问题描述
我试图从我的galleryReducer 中只保留一个变量(这是一个包含数组和对象的数组)。我总共有 3 个减速器,cameraReducer、signupReducer、galleryReducer。现在我正在持久化整个galleryReducer,但我不确定如何从'redux-persist-transform-filter'配置createFilter以仅持久化失败的上传。这是设置的代码,以了解这一切:
这是我的 galleryReducer 的样子:
const initialState = {
galleries: {
galleries: [
{
loading: true,
},
],
error: false,
},
...
failedUploads: [ <--- THE PORTION OF THIS REDUCER THAT I WANT TO PERSIST.
{
userID: '',
failedUploads: [],
},
],
}
我的 app.js 中的设置
import signupReducer from './src/store/signup-auth/reducer'
import cameraReducer from './src/store/camera/reducer'
import galleryReducer from './src/store/event/reducer'
const persistConfig = {
key: 'root',
storage: AsyncStorage,
whitelist: ['galleryReducer'],
}
const rootReducer = combineReducers({
signupReducer: signupReducer,
cameraReducer: cameraReducer,
galleryReducer: galleryReducer,
})
const persistedReducer = persistReducer(persistConfig, rootReducer)
const store = createStore(persistedReducer, applyMiddleware(ReduxThunk))
const persistor = persistStore(store)
return (
<Provider store={store}>
<PersistGate
loading={<LoadingViewWithoutInsets />}
persistor={persistor}
>
<AppNavigator />
</PersistGate>
</Provider>
)
解决方案
推荐阅读
- git - 如何使用 Git Parameter 插件从多个存储库加载分支列表?
- html - 使用 CSS Flexbox 旋转 HTML 文本输入
- javascript - 为什么这 == 窗口?
- html - 如何在我的 SVG 示例中实现动画渐变
- java - Java:Antlr4 MySql 获取单个语句
- docker - docker run 什么都不做,没有创建日志
- docker - 在 docker 容器之间建立持久的 IP 连接
- linux - bash 脚本中的 z${variable} 和 zfalse 是什么意思?
- javascript - 更改时的 Javascript 不起作用(Ajax 加载过滤的项目)
- spring - 使用spring security禁用静态内容的基本身份验证