【发布时间】:2017-03-20 22:55:15
【问题描述】:
我在我的 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。
我猜这与编译有关,但找不到好的解释或解决方案。
【问题讨论】:
-
不应该是
{{startDate | momentPipe : 'ddd' }}吗? -
Angular 2 中已经有一个日期管道,你确定你没有不小心使用它吗? angular.io/docs/ts/latest/api/common/index/DatePipe-pipe.html
标签: angularjs angular ionic2 momentjs angular-pipe