Firestore Как получить доступ к значению из снимка в потоке снимка документа

Я новичок в dart/flutter и прямо сейчас создаю приложение, которое отслеживает некоторые данные о каждом пользователе в базе данных firstore. У меня есть коллекция "Пользователи", которая содержит документ для каждого пользователя, и одно из полей в пользовательском документе - это "UID", полученный через firebase_auth.

При этом, чтобы убедиться, что у меня есть доступ к последней копии пользовательского документа, я держу Stream. Я хочу каким-то образом получить доступ к полю "UID" из последнего снимка в потоке, а затем выполнить с ним другие операции.

Есть какой-либо способ сделать это? Я неправильно использую / понимаю потоки?

1 ответ

Если вам нужен только UID для создания других виджетов, вы можете просто использовать StreamBuilder который будет перестраивать свои дочерние элементы всякий раз, когда новое значение испускается из потока (который вы получаете копию). Однако, если вам нужно получить доступ к последнему UID в произвольный момент времени, проверьте RxDart's BehaviorSubject который обеспечивает синхронный доступ в постоянное время к последнему выданному значению, если таковое существует. Это очень полезно для обработки состояния в целом.

Другие вопросы по тегам