我在我的 angular 2 应用程序中实现了以下自定义管道:
import { Injectable, Pipe } from '@angular/core';
import * as moment from 'moment';
@Pipe({
name: 'momentPipe'
})
@Injectable()
export class MomentPipe {
transform(value: Date|moment.Moment, ...args: any[]): any {
let [format] = args;
return moment(value).format(format);
}
}
它适用于"标准"格式:
{{startDate | date : 'dd/MM/yyyy' }}
但是当我尝试打印日期名称时:
{{startDate | date : 'ddd' }}
我上屏幕只是ddd
.可以肯定的是,在ts
文件中,我确实这样做:
console.log(moment(this.startDate).format('ddd'));
例如,我得到了Sat
。
我想这与编译有关,但找不到好的解释或解决方案。
您正在使用内置的 Angular2 日期管道,date
而不是您的momentPipe
,| moment:
但是,您仍然应该能够使用date
{{startDate | date: 'EEE'}}