Я пытаюсь получить читаемую дату из магазина - PullRequest
0 голосов
/ 10 апреля 2019

Я пытаюсь получить читаемую дату из типа данных Timestamp в моей базе данных firestore.

for (var ticketDoc of ticketsSnapshot.docs) {
            var timeStamp = await ticketDoc.data().TimePreferred;
            console.log(timeStamp.toDate());
            var time = new Date(timeStamp).toDate();
            ticketDoc.data().TimePreferred = time;
            tickets.push(ticketDoc.data());
        }

Я прочитал вопрос о похожей проблеме по адресу:

Как мнепреобразовать дату / время Firestore в JS Date ()?

, поэтому я попытался сделать то же самое, и я ожидаю вывод читаемой даты, хотя это дает мне правильный результат в

console.log(timeStamp.toDate());

но также это дает мне ошибку.Вывод на консоль следующим образом: -

2019-04-10T06:30:00.000Z
TypeError: (intermediate value).toDate is not a function

Нет: я пытаюсь получить удобочитаемую дату в почтальоне

Ответы [ 3 ]

0 голосов
/ 10 апреля 2019

Вы пытались изменить это на

var time = (new Date(timeStamp)).toDateString();
0 голосов
/ 10 апреля 2019

Если поле TimePreferred в вашем документе - Timestamp, вы можете получить из него действительный объект Date, просто вызвав для него toDate().

Итак:

for (var ticketDoc of ticketsSnapshot.docs) {
    var date = ticketDoc.data().TimePreferred.toDate();
}

Ни один из этих вызовов не является асинхронным или не возвращает обещание, поэтому вам не нужно await.

0 голосов
/ 10 апреля 2019

Измените следующую строку:

var time = new Date(timeStamp).toDate();

в это:

var time = new Date(timeStamp).toDateString();

Из документов :

Строка, представляющая часть даты данного объекта Date в удобочитаемой форме в американском английском.

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