react-native - 从单个数据源更新整个应用程序中数据更改的本机 ui 组件
问题描述
我是 react-native 的新手,我正在从服务器获取数据,并且基于数据我必须更新我的 UI 元素,就像更改背景颜色或隐藏图像一样。为了实现这一点,我应该遵循什么方法,现在我正在尝试使用 redux 来做到这一点,但不知何故无法更新 redux 中的特定项目,因为在 redux 中我正在存储 Json 数据。我尝试更新,但仍然没有更新 redux 的运气。
基本上,如果我从服务器自动获取任何数据(如通知或其他数据),我想在每个屏幕上更新我的 UI。
请帮助我决定更好的方法来实现这一点。
提前致谢。
依赖项:
"dependencies": {
"firebase": "^5.0.3",
"lodash": "^4.17.11",
"prop-types": "^15.6.2",
"react": "16.4.1",
"react-native": "0.56.0",
"react-native-elements": "^0.19.1",
"react-native-keyboard-aware-scroll-view": "^0.8.0",
"react-native-navigation": "^2.3.0",
"react-native-segmented-control-tab": "^3.3.1",
"react-native-size-matters": "^0.2.1",
"react-native-vector-icons": "^6.1.0",
"react-redux": "^6.0.0",
"redux": "^4.0.1"
},
"devDependencies": {
"babel-jest": "23.6.0",
"babel-polyfill": "^6.26.0",
"babel-preset-react-native": "5.0.2",
"jest": "23.6.0",
"react-test-renderer": "16.4.1"
},
解决方案
如果你正在使用 Redux,请尝试根据其状态制作组件。假设您要更改组件的颜色。您可以使用道具使组件颜色动态化,在状态更改调度操作时,reducer 会将新状态返回给组件。组件应基于该状态呈现。查看Redux 工作原理一文,你会明白的。
推荐阅读
- java - Collection.contains 产生错误的结果
- sql-server - sqlcmd 在 Linux 中通过 ODBC 连接到 MSSQL
- c - 使用全局变量同步 p_threads
- python - 字典被“附加”并随机打印
- sql - 无法创建文件,因为它已经存在。更改文件路径或文件名,然后重试操作
- vba - Excel VBA 复制和粘贴特定行数和新工作簿
- html - 为什么 MDN 建议使用沙盒将文件上传到不同的(子)域?
- enums - 在 Kotlin 的枚举类 getter 中使用 when 子句
- c# - 使用约束作为类型传递泛型类型
- git - Visual Studio 使用 lf 行结尾,如开源存储库