Пройти дату без часового пояса - PullRequest
0 голосов
/ 04 февраля 2019

Проблема с моментом в шаблоне asp.net. Угловая версия.В основном я передаю дату в мой API.Но после того, как дата прошла через прокси-сервер, дата конвертируется в ISO (UTC), и это нарушает логику.Например, я передаю дату 28 февраля после того, как она конвертируется в UTC, мой бэкэнд получил 27 февраляКак я понимаю, мне нужно удалить смещение часового пояса из моей даты, и мне нужно использовать метод момента utc (), но я не могу сделать эту работу.

Я импортирую момент в моем файле ts как импорт * как момент от 'момента';

Я приведу значение как

let licDate = (this.newExpireDateField.value as moment.Moment).utc(false));

Я использую компиляцию, поэтомунет проблем во время компиляции, но когда эта строка вызывается в браузере, она выдает исключение
ОШИБКА TypeError: this.newExpireDateField.value.utc не является функцией

Я думаю, она пытается вызвать эту функцию с момента-Типов часовых поясов там нет функции utc.Но почему он вызвал это из другого типа, который я указал?

К вашему сведению, я не могу использовать любой метод с момента lib здесь.Выдает исключение "не является функцией".Может быть, это как-то связано с веб-пакетом.Пожалуйста, помогите решить это.

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

нашел мою ошибку.Была проблема с типографской вставкой.

Когда я использовал

let licDate = (this.newExpireDateField.value as moment.Moment)

, он приводился к типу простой даты JS.После того, как я изменил его на:

let newDate: moment.Moment = moment(this.newExpireDateField.value);

, он начинает работать точно как тип момента.Спасибо, ребята, за помощь.

0 голосов
/ 04 февраля 2019
moment.utc().format('MM-DD-YYYY')

возвращает «2019-02-04»

...