0

我在我的 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了。

我想这与编译有关,但既找不到好的解释也找不到解决方案。

4

1 回答 1

4

您正在使用内置的 Angular2 日期管道,date而不是您的momentPipe,| moment:

但是,您仍然应该可以使用date

{{startDate | date: 'EEE'}}
于 2017-03-20T23:00:48.037 回答