我有带bsConfig的bsDatepicker,我正在尝试对其进行验证,以确保其格式正确。问题是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。 知道为什么日期转换失败了吗? 谢谢。
答案 0 :(得分:0)
date.toDateString您缺少括号date.toDateString()
答案 1 :(得分:0)
不确定为什么toDateString()
到那个时候。您可以像这样解析到日期
this.dateStr = this.datePipe.transform(new Date(date.toDateString()) ,'MM/dd/yyyy');
演示:https://stackblitz.com/edit/angular-datepipe-in-component-test
答案 2 :(得分:0)
可以使用Datepipe将日期以打字稿转换为这种格式'yyyy-MM-dd'
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');
}
,然后在app.module.ts的“ providers”数组中添加Datepipe。像这样:
import { DatePipe } from '@angular/common'
providers: [DatePipe]
答案 3 :(得分:0)
private static datePipeEn: DatePipe = new DatePipe('en-US');
解决了我的问题,希望对有类似问题的人有所帮助!