Назначить dosumentSnapshot для пользовательского объекта? - PullRequest
0 голосов
/ 03 июня 2018

в первую очередь я видел ответы: здесь но для меня переход с android и angular просто сногсшибатен, когда приходится писать так много кода (где в android и angular это занимает одну строку) плюсответы не самые последние, поэтому удивляйтесь, есть ли лучший способ для уточнения сегодня

, вот мой пример:

struct User{
  let fistName:String
  let lastName:String
}

и я получаю данные с помощью:

Firestoer.firestore().collection("users").document('someId').getDocument{
   (snapshot,error) in 
}

Вопрос в том, как назначить значения снимка для значений объекта пользователя в одной строке кода - как пользователь = снимок -ish.

Ответы [ 2 ]

0 голосов
/ 13 июня 2018

Я наконец-то обнаружил, что просто в быстром firestore sdk по-прежнему отсутствует эта функция, но она кажется такой же, как в работах, и вы можете найти обсуждение этого в здесь

...У нас было что-то подобное на нашем радаре.По сути, мы хотим предоставить эквивалент Android DocumentSnapshot.toObject.

, надеюсь, это скоро будет сделано ...

0 голосов
/ 07 июня 2018

Читая ваши комментарии, трудно понять, где именно у вас возникла проблема.Я собираюсь предположить, что это потому, что вы не знали, как написать другой инициализатор из-за вашего первого комментария:

`my object is simple "stuct" and I could not make "(dictionary: data)" -call.`

Вот инициализатор, который вы можете использовать:

extension User {
    init?(dictionary: [String: Any]){
        guard let firstName = dictionary["firstName"] as? String else { return nil }
        guard let lastName = dictionary["lastName"] as? String else { return nil }
    }
        self.init(firstName: firstName, lastName: lastName)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...