我想知道是否有一种方法可以一次调用firebase以获取用户模型并基本上在整个应用程序中使用它。我一直需要打电话给当前用户以在需要的地方获取他的信息,例如供稿视图,个人资料视图,警报视图等。
代码:users_api.dart
observeCurrentUser(Function onSuccess(User u), Function onFailure(String e)) {
Services().auth.isLoggedIn((u) {
Services().crud.read(this.usersCollection, u.uid, (ds) {
onSuccess(User().transform(ds.documentID, ds.data));
}, (e) {
onFailure(e);
});
}, () {
onFailure('No User Logged In...');
});
}
下面是auth.dart文件中的Services().auth.isLoggedIn()...
方法
Future isLoggedIn(Function onSuccess (FirebaseUser user), Function onFailure ()) async {
FirebaseUser u = await this.auth.currentUser();
if (u != null) {
onSuccess(u);
} else {
onFailure();
}
}
我是否可以在main.dart页面中调用observeCurrentUser()
并能够访问它而无需通过每个小部件,尤其是不需要它们的小部件?