Angular2如何处理日期管道的值为null

时间:2017-02-08 09:23:55

标签: angular angular2-template

我有像这样使用日期管道的模板

{{value | date: 'dd/MM/yyyy'}}

valuenull

如果我的值为null,我得到了字符串'object not match'

,如何处理这个问题

8 个答案:

答案 0 :(得分:15)

{{ (value !== null) ? (value | date: 'dd/MM/yyyy') : "" }}

答案 1 :(得分:9)

使用Angular 4.2.4检查

{{(value | date:'dd/MM/yyyy') || 'n/a' }}

答案 2 :(得分:4)

您可以添加:

{{value || '' | date: 'dd/MM/yyyy'}}

这应该像魅力一样!

这是工作plunker

答案 3 :(得分:3)

如果您的数据来晚了,并且在视图中显示了无效日期或其他任何内容,请使用此逻辑并首次将其设置为空。

@Pipe({
    name: 'displayDate'
})
export class DisplayDatePipe implements PipeTransform {
    transform(value): any {
        if (value !== null) {
            return moment(value).format(DateFormat.DD_MMM_YYYY);
        }
        return null;
    }
}

答案 4 :(得分:0)

使用5.2.0

<h4> {{ (value | date : 'mediumDate') ? (value | date : 'mediumDate') : 'Present' }} </h4>

答案 5 :(得分:0)

使用Angular 8x进行了检查

{{ (value !== "null") ? (value | date: 'dd/MM/yyyy') : "-" }} 

答案 6 :(得分:0)

在日期管道中,如果要获取格式为“ dd / mm / yyyy”的日期为“ dd / 00 / yyyy”(其中mm为null或00),则使用“ dd / MM / yyyy”(MM为大写),而不是“ dd / mm / yyyy”

答案 7 :(得分:0)

试试这个简单的方法:

{{(value==null) ? value: value | date: 'dd/MM/yyyy'}}

或者,如果您不想打印 null,那么您可以在下面的选项中的引号下输入任何内容(N/A 或 Null 或 None),或者您也可以保持原样。

{{(value==null) ? "": value | date: 'dd/MM/yyyy'}}