【发布时间】:2020-10-11 06:40:04
【问题描述】:
我正在制作一个 Flutter 应用程序,我在其中使用 Firebase Auth 和 Cloud Firestore。对于每个用户,我都有一个以用户 uid 作为文档 ID 的培训文档。 当我更新我的教练的数据时,我想确保只有当前登录用户的文档可以被修改。
我有一个 AuthService 类,使用以下方法获取当前用户:
Stream<FirebaseUser> get user {
return _auth.onAuthStateChanged;
}
所以当我想更改我的 DatabaseService 类中的培训师文档时,我想获取流的当前值以获取用户 uid。我不认为我可以使用 StreamBuilder 或 Provider,因为这不是一个 Widget Tree,而是一个简单的 Dart 类。但是,我也不认为我可以使用 .listen(),因为我只想获取当前 Stream 值,而不是全部。
如何获取 Dart Stream 的当前值?
【问题讨论】:
标签: flutter dart firebase-authentication stream