Я думаю, что путаница происходит из-за того, что вы наблюдаете .childAdded
. Поскольку вы наблюдаете только один узел / объект, вы захотите вместо этого наблюдать .value
:
Database.database().reference()
.child("users/BA917746-F5BE-4FA4-B23E-C998F4118CCE")
.observe(.value) { (snapshot) in
let dict = snapshot.value as! [String: Any]
self.name = dict["name"] as! String
Если вы наблюдаете за всем узлом users
, тогда вы должны использовать .childAdded
или l oop над дочерними узлами снимка.