#swift #google-cloud-firestore
# #быстрый #google-облако-firestore
Вопрос:
У меня есть этот код для отображения имени пользователя, которое было сохранено в Firestore при регистрации:
func displayUserName(){
let db = Firestore.firestore()
if let uid = user?.uid{
db.collection("PROFILE").document(uid).getDocument { (snap, err) in
guard let data = snap else {return}
let firstname = data.get("firstName") as! String
self.firstName = firstname
}
}
}
но когда я меняю имя в Firestore, мне нужно перезапустить приложение, чтобы оно могло обновиться. возможно ли обновить это имя без необходимости перезапуска приложения?
Комментарии:
1. Я не знаю о switf, но у вас должна быть возможность получить так называемый моментальный снимок, чтобы вы могли прослушивать изменения. getDocument() получает документ один раз
2. Спасибо, сработало безупречно. Просто ответил на мой вопрос. Ваше здоровье
Ответ №1:
Основываясь на приведенном комментарии, я только getDocuments
что сменил addSnapshotListener
db.collection("PROFILE").document(uid).addSnapshotListener { (documentSnapshot, error) in
guard let datas = documentSnapshot else {return}
let firstname = datas.get("firstName") as! String
self.firstName = firstname
}