(这原本是 flutter-dev reddit 上的一篇文章,被重定向到此处)
因此,我开始使用 firebase 作为后端制作这个 flutter 应用程序,在查看了状态管理的所有选项后,我终于意识到 firebase 提供的工具已经可以处理我需要状态管理的几乎所有内容。
例如:
我可以在我的状态下设置当前登录的用户以显示正确的登录或主页,并使用户 uid 可用于小部件以进行 firestore API 调用。
或者
我只需收听即可FirebaseAuth.instance.onAuthStateChanged显示正确的页面,并且可以FirebaseAuth.instance.currentUser()从任何地方使用来获取登录的用户 uid 并执行我的 firestore 调用。
我的意思是,对于每一个需要全局状态的东西,我基本上都可以有一个 firebase 流监听器。
这是正确的吗 ?或者我在这里错过了什么?
你没有遗漏任何东西。由于大多数 Firebase API 都依赖于 Google 服务器的数据,因此其中许多 API 都被设计为以响应式方式使用。让您的 UI 响应式地响应这些异步更改(根据我的经验)是保持代码简单的最佳方法。
不同类型的听众之间可能存在轻微的行为。但是,onAuthStateChanged当您附加侦听器时,侦听器会立即以当前状态触发,这使其成为侦听器的一个很好的示例,您可以在需要响应身份验证状态的任何地方使用它(而不是将该状态存储在应用程序中的某个位置)。
| 归档时间: |
|
| 查看次数: |
1314 次 |
| 最近记录: |