Я загружаю chatID из пользовательского объекта, а затем к каждому загруженному объекту чата подключаю childChanged
прослушиватель.
Как я могу получить родительский ключ ребенка, полученный в моментальном снимке?
Мне нужен родительский ключ, чтобы я мог отслеживать каждого слушателя, подключенного к каждому чату.
var currentUserChats = [Chat]() {
didSet(newChat){
attachChildChangedObserverOn(chat: newChat)
}
}
var observersArray = [String: UInt]() // chatUID:handle
func attachChildChangedObserverOn(chat: Chat) {
var handle: UInt = 0
let ref = DDatabaseRReference.chats.reference().child(chat.chatUID)
handle = ref.observe(.childChanged, with: {[weak self] (snapshot) in
//how can I get the parent key?
//let chatUID = snapshot.parentKey
self?.observersArray[chatUID] = handle
)}
}
chats
-LOTqZNaOfarrlTYTKo4
chatImageUID: ""
chatUID: "-LOTqZNaOfarrlTYTKo4"
isGroupChat: false
users
0Y0l7gJbGgM5l2XKW25DrEZqMPV2
name: "Alex"
lastMessage: "bla bla"