Я наблюдаю, как кажется, странное поведение при использовании DatePipe в угловом2. По какой-то причине, после запуска даты '03// 1992' через DatePipe, он меняется на '03// 1992' :DatePipe неправильно изменяет дату
http://plnkr.co/edit/SK6Z9q8h7EqunmkqVtpt
(обновленный код: исправлена ошибка)
@Component({
selector: 'my-app',
template: `
<div> Invalid Date: {{ somedate | date:'MM/dd/yyyy' }}</div>
<div> DateObject: {{ dateType }}</div>
<div> DateObject With Pipe: {{ dateType | date:'MM/dd/yyyy' }}</div>
<br>
<div> Other Valid Dates </div>
<div>{{ afterdate | date:'MM/dd/yyyy' }}</div>
<div>{{ dateTypeAfter }}</div>
<div>{{ beforedate | date:'MM/dd/yyyy' }}</div>
<div>{{ dateTypeBefore }}</div>
`,
})
export class App {
somedate:string;
afterdate: string;
beforedate: string;
dateType: Date;
dateTypeAfter: Date;
dateTypeBefore: Date;
constructor() {
this.somedate = '03/09/1992';
this.afterdate = '03/09/1993';
this.beforedate = '03/09/1991';
this.dateType = new Date(this.somedate);
this.dateTypeAfter = new Date(this.afterdate);
this.dateTypeBefore = new Date(this.beforedate);
}
}
Это не произойдет в течение 1991 года или 1993, как показано выше. Результат:
Invalid Date: 03/08/1992
DateObject: Mon Mar 09 1992 00:00:00 GMT-0400 (Eastern Daylight Time)
DateObject With Pipe: 03/08/1992
Other Valid Dates
03/09/1993
Tue Mar 09 1993 00:00:00 GMT-0500 (Eastern Standard Time)
03/09/1991
Sat Mar 09 1991 00:00:00 GMT-0500 (Eastern Standard Time)
Любая идея, почему это происходит? Или я что-то неправильно истолковываю?
Plunker показывает правильные даты для меня: D – Alex
Таким образом, при его просмотре отображается первая строка как «Неверная дата: 03/09/1992»? – lupus137
Да, точно http://imgur.com/Dn2y3lK Я думаю, что угловая датапика немного багги (по-прежнему?) По крайней мере в какой-то момент. Не нужно было работать с ним через некоторое время :) – Alex