Как назначить TimeStamp для FireStore, используя FieldValue.serverTimestamp () в swift - PullRequest
0 голосов
/ 31 октября 2018

Как назначить TimeStamp, используя FieldValue.serverTimestamp(), он возвращает FSTServerTimestampFieldValue: 0x6000024ee0e0 , поскольку debugPrint(FieldValue.serverTimestamp()) отображается в меню отладки

Код здесь

let db = Firestore.firestore()
    let settings = db.settings
    settings.areTimestampsInSnapshotsEnabled = true
    db.settings = settings        
    db.collection(THOUGHTS_REF).addDocument(data: [

        CATEGORY : categorySelected,
        NUM_COMMENTS : 0,
        NUM_LIKES : 0,
        THOUGHT_TXT : thoughtTxt.text!,
        TIMESTAMP : FieldValue.serverTimestamp(),
        USERNAME : username


    ]) { (err) in
        if let err = err {
            debugPrint("Error adding document: \(err)")
            return
        }
    }
    self.navigationController?.popViewController(animated: true)
}

1 Ответ

0 голосов
/ 01 ноября 2018

Насколько я знаю, в настоящее время нет способа немедленно показать метку времени. Отметка времени на стороне сервера генерируется только на сервере и составляет null до тех пор, пока ответ от сервера не вернется. Вот почему вы также получите этот ответ.

Я прочитал статью несколько месяцев назад, где говорилось, что ведется работа, чтобы клиент сразу оценил метку времени. Как только эта функция будет выпущена, вы сможете получить два события, аналогично , как работает база данных Firebase Realtime . Первое событие будет содержать локальную оценку метки времени, второе событие будет содержать фактическую подтвержденную метку времени с сервера.

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