reactjs - 使用命名空间或全局对象作为数据源而不是使用道具或状态是否正确?
问题描述
我已经开始挖掘 reactjs 的栖息地,发现没有像 AngularJS 那样将范围绑定到视图。据我了解,对于重新渲染,您应该主要通过调用更改状态来触发渲染功能setState
。
如果您有基于数据结构的 DOM 层次结构,则可以使用状态提升来修改组件树上层使用的数据。
我的问题是
- 我对上述陈述是否正确?
- 从 reactjs 的最佳实践的意义上说,使用一个全局对象(我们称之为资源对象)来保存数据并通过调用组件更改观察者函数来控制重新渲染,如下所示;
这是一个代码笔
解决方案
- 您可以将 redux 用于可以由许多组件修改的数据类型。您不会像定义全局对象那样做。Redux 是一个非常酷的库,可以解决您面临的问题。您可以将其称为中央/全局状态管理器。如果您需要从全局状态更改/获取某些内容,则调用 redux 函数并获取数据。
推荐阅读
- ansible - 尽管变量不为空,但获取 Ansible 运行时错误字典对象'没有属性'stdout_lines'
- tensorflow - export_inference_graph.py 与 export_tflite_ssd_graph.py
- ios - 如何在 iOS 13 集合视图组合布局上隐藏标题
- python - 如何使用多处理模块更新多维numpy数组的每个元素
- kubernetes - 如何在同一个 kubernetes 集群上部署多个前端应用程序,只有一个主机名
- javascript - chrome 77如何实现打印功能支持
- javascript - 机器学习模型中的元素类型无效
- android - 如何检查android设备支持手电筒的`react-native`?
- azure-functions - Azure 函数加载 aztable
- swift - 如何使用异步回调使在主线程中运行的任务串行队列?