Как проверить дату с помощью DatePipe в приложении Angular 5? - PullRequest
0 голосов
/ 22 апреля 2019

У меня есть bsDatepicker с bsConfig, и я пытаюсь проверить его, чтобы убедиться, что он в правильном формате. Проблема в том, что bsDatepicker создает дату в другом формате, поэтому я не могу ее проверить.

Строка даты:

Mon Apr 01 2019 19:05:36 GMT+1100 (Australian Eastern Daylight Time)

Я пытаюсь преобразовать его, используя DatePipe, например:

dateStr = this.datepipe.transform(date.toDateString(), 'MM/dd/yyyy');

То, что я получаю, равно нулю. Ожидаемый результат будет 04/01/2019. Любая идея, почему DatePipe не удалось преобразовать? Спасибо.

Ответы [ 4 ]

0 голосов
/ 22 апреля 2019
private static datePipeEn: DatePipe = new DatePipe('en-US');

Решил мою проблему, надеюсь, это поможет кому-то с подобной проблемой!

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

Не уверен, почему toDateString() к тому времени.Вы можете проанализировать дату, как это

this.dateStr = this.datePipe.transform(new Date(date.toDateString()) ,'MM/dd/yyyy');

Демо: https://stackblitz.com/edit/angular-datepipe-in-component-test

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

Дата может быть преобразована в машинописном тексте в этот формат 'гггг-ММ-дд' с помощью Datepipe

import { DatePipe } from '@angular/common'

constructor(public datepipe: DatePipe){}

myFunction(){
 this.date=new Date();
 let latest_date =this.datepipe.transform(this.date, 'mm-dd-yyyy');
}

и просто добавьте Datepipe в массив app'module.ts «провайдеров». Как это:

import { DatePipe } from '@angular/common'

providers: [DatePipe]
0 голосов
/ 22 апреля 2019

date.toDateString вам не хватает скобок date.toDateString ()

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