Я хотел бы знать, каков наилучший способ доступа вошедшего в систему пользователя во всех приложениях. и не делайте FirebaseAuth.instance.currentUser().then((result) {...});
во всех состояниях инициализации.
У меня есть две идеи: создать синглтон, который инициализируется при запуске приложения. И слушай onAuthStateChanged
.
class GlobalDataAppli {
static final GlobalDataAppli _appData = new GlobalDataAppli._internal();
FirebaseUser user;
IdTokenResult userToken;
List<Post> myListPost;
factory GlobalDataAppli() {
return _appData;
}
GlobalDataAppli._internal();
}
final globalData = GlobalDataAppli;
Или я вижу Унаследованные виджеты. Но это будет делить моих пользователей только с дочерними виджетами, а не при смене видов.
Я также хотел бы поделиться списком постов в приложении. Действительно, одно и то же сообщение может быть видно на нескольких страницах, поэтому я хочу сохранить в памяти все отображаемые в данный момент сообщения, чтобы каждый виджет сообщений основывался на одной и той же переменной. Таким образом, изменение сообщения в представлении отражается в каждом представлении, в котором отображается это сообщение. (В настоящее время я передал этот список в качестве параметра для каждого представления, и он работает, но я знаю, что это неправильный способ сделать это).
Кто-нибудь знает лучшую практику для этого?