Доступ к вложенным парам ключ-значение в swift - PullRequest
0 голосов
/ 29 октября 2018

Я пытаюсь получить доступ к значению ключа 1. Вот моя диаграмма Firebase:

enter image description here

А вот и мой код:

@IBAction func ridefinder(_ sender: Any) {

    let ref = Database.database().reference()
    ref.child("name/hi").observeSingleEvent(of: .value) { (snapshot) in
         print(snapshot.value as? [String:Any])
    }

Когда я запускаю это, он печатает nil, однако, когда я немного изменяю его на это:

@IBAction func ridefinder(_ sender: Any) {

    let ref = Database.database().reference()
    ref.child("name").observeSingleEvent(of: .value) { (snapshot) in
         print(snapshot.value as? [String:Any])
    }

печатает оба набора пар ключ-значение внутри.

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

1 Ответ

0 голосов
/ 29 октября 2018

Try:

let ref = Database.database().reference()
ref.child("name").observeSingleEvent(of: .value) { (snapshot) in
     if let value = snapshot.value as? [String:Any], let hi = value["hi"] as? String { 
         print(hi)
     }
}

Доступ к значениям в ссылках на базу данных осуществляется с помощью snapshot.value и приводится как [String: Any].И тогда вы найдете нужные значения внутри словаря, как и всегда доступ к ним как словарь ["ключ"].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...