react-native - 对如何使用 Redux 和数据库感到困惑
问题描述
我试图弄清楚如何在我的 React Native 应用程序中使用 Redux。
我使用 Realm 作为本地数据库,我很困惑如何实现它。在 Realm 中,我保存了一组自定义对象,因此当应用程序启动时,我想获取该数组并将其设置为应用程序的状态。
据我了解,我需要采取行动,如下所示:
export const fetchItems = () => {
return (dispatch) => {
dispatch({
type: "FETCH_ITEMS",
})
}
}
并且有一个看起来像这样的减速器:
const initialState = {
items: [],
}
const reducer = (state = initialState, action: AnyAction) => {
switch (action.type) {
case ActionType.fetchItems:
return {
...state,
items: action.payload
}
break;
default:
return state;
}
}
但我不确定我应该如何在主屏幕中使用它。我想应该是这样的:
const { items } = useSelector(state => store.getState().items)
但是,当我向数据库添加新项目时,我当然应该更新数据库,那么什么时候应该更新状态呢?我尝试阅读文章,并观看一些教程,但每个人的工作方式都有点不同,而且更令人困惑。到目前为止,我写的关于 Redux 的内容是对的吗?应该这样使用它吗?
解决方案
推荐阅读
- c# - 服务器错误 i / 应用程序
- node.js - 不能安排 aws-sns 吗?
- ruby-on-rails - 迁移中的模型验证 - Ruby on Rails
- windows - Wix 引导程序多个超链接文本
- java - 总是出现运行时错误#Java
- unity3d - 在批处理模式下运行Unity时无法使用Build Target ios
- php - 参数 1 传递给 App\Http\Controllers\Auth\LoginController::authenticated()
- vue.js - Vue2 + Vuex - 不渲染在存储中成功设置的数组
- php - 使用 implode() 遇到的格式不正确的数值
- symfony - 如何在类中获取 Symfony 存储库