包含Angular 2+ Date Pipe格式的文本

时间:2017-08-23 15:13:49

标签: angular pipe date-pipe

我正在尝试使用Angular 2中的DatePipe。我希望输出日期采用以下格式:08/23/2017 at 11:07 AM

但是,我无法找到以我的日期格式包含文字at的正确方法。

当我指定格式时:{{my_date | date:'MM/dd/yyyy at hh:mm a'}}

我得到:08/23/2017 AMt 11:07 AM

我尝试用引号括起来:{{my_date | date:'MM/dd/yyyy "at" hh:mm a'}}

但是,这只是将引号添加到输出中:08/23/2017 "AMt" 11:07 AM

唯一的方法是将其分解为两个单独的管道,其格式为{{my_date | date: 'MM/dd/yyyy}} at {{my_date | date: 'hh:mm a'}}两个?

或者有没有办法逃避a中的at,以便它显示文字at而不是AMt

2 个答案:

答案 0 :(得分:14)

我有这种确切的情况。通过用\'

包围文字文本,我能够使它工作

{{my_date | date: 'yyyy/MM/dd \'at\' HH:mm:ss'}}

答案 1 :(得分:0)

可能是你可以创建一个简单的管道,

@Pipe({
    name: 'dateFormatPipe',
})
export class dateFormatPipe implements PipeTransform {
    transform(value: string) {
       var datePipe = new DatePipe("en-US");
        value = datePipe.transform(value, 'MMM-dd-yyyy') + ' at ' + datePipe.transform(value, 'hh:mm a');
        return value;
    }

}

<p>{{currentTime | dateFormatPipe}}</p>

Ref1Ref2