在我的角度2应用程序中,我需要以特定格式显示以下日期,但日期过滤器未正确显示。 输入:
let givenDate ="20170328"
我需要将其显示为2017年3月28日。由于输入只是普通字符串,我该如何实现?
答案 0 :(得分:1)
最好创建一个新管道,因为上面给出的日期字符串不是正常的日期字符串格式。
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'myDate'
})
export class MyDate implements PipeTransform {
public transform(value) {
let dateArray = value.split("");
let year = dateArray[0]+dateArray[1]+dateArray[2]+dateArray[3];
let month = dateArray[4]+dateArray[5];
let date= dateArray[6]+dateArray[7];
let dateString = year + '-' + month + '-' + date;
return dateString;
}
}
然后我们将返回值作为有效日期格式。此外,您还可以从此处返回日期作为日期字符串
例如:dateString.toDateString();
然后返回日期格式为Tue Mar 25 2017
否则你可以简单地返回dateString,如上面的代码和html中的日期管道,例如:
<div>{{givenDate | myDate | date:'DD/MM/yyyy'}}</div>