在 React 中,将获取的 Firebase 数据存储在本地还是全局状态?
Posted
技术标签:
【中文标题】在 React 中,将获取的 Firebase 数据存储在本地还是全局状态?【英文标题】:In React, store fetched Firebase data in local or global state? 【发布时间】:2018-02-24 00:56:42 【问题描述】:我正在为处理出租房间的小企业构建管理仪表板。他们只有 6 个房间,所以我不需要大数据库。我为此使用 Firebase。我的问题是,我是否应该在我的 App.js 组件中有一个大状态,在 componentWillMount 中使用 Firebase 上的 .on 方法,它将数据库同步到单个状态并将这些更改与道具传递到不同的部分,或者我应该分别从每个组件中的 firebase 获取数据并将它们存储在本地状态?哪一个是更好的做法?双方各有优劣吗?
谢谢,巴拉兹
PS.:我计划实施反应路由器,以便能够轻松链接到仪表板的不同部分。这有什么改变吗?
【问题讨论】:
【参考方案1】:我只会在容器组件中获取一次数据,然后通过 props 将其传递给子组件。
此外,应根据反应docs 在componentDidMount
中获取数据
最后,即使您的应用程序相对较小,查看 Redux 来管理您的状态可能会有所帮助,这有望帮助您组织数据和调试代码。
祝你好运!
【讨论】:
以上是关于在 React 中,将获取的 Firebase 数据存储在本地还是全局状态?的主要内容,如果未能解决你的问题,请参考以下文章
ReactFire - 将 Firebase 绑定到 React 状态时,获取“对象作为 React 子项无效”
Firebase 实时数据库获取函数返回未定义(较新的 firebase 版本,2021) - 使用 React Native
React Redux Firebase 无法获取 firebase.storage