如何格式化来自日期数据库的日期

时间:2019-10-08 08:44:47

标签: angular date

我想知道是否可以过滤/格式化ngFor日期(来自数据库)。我在数据库中具有日期格式:“ 2017-11-02 12:13:14”,但我想在ngFor表中仅显示“ 2017-11-02”。这可能吗?

<tr *ngFor="let myCar of cars>
            <td>{{myCar.name}}</td>
            <td>{{myCar.registered}}</td> //can I format retrieved date here?
</tr>

我只想知道我是否可以删除时间并仅向用户显示日期。我不确定PIPE是否可以工作。

3 个答案:

答案 0 :(得分:3)

您可以使用.slice来做到这一点:

<tr *ngFor="let myCar of cars>
    <td>{{myCar.name}}</td>
    <td>{{myCar.registered.slice(0, 10)}}</td>
</tr>

无需再次格式化

答案 1 :(得分:0)

https://angular.io/api/common/DatePipe

https://stackblitz.com/edit/angular-74cpp1?file=src/app/app.component.ts

<tr *ngFor="let myCar of cars>
            <td>{{myCar.name}}</td>
            <td>{{myCar.registered | date: 'yyyy-MM-dd'}}</td>
</tr>

答案 2 :(得分:0)

您可以使用https://momentjs.com/

在app.component.ts中设置本地语言

moment.locale('pt-BR');

创建服务(fx date-utils.service.ts)以格式化日期:

public formatDate(inputDate) { return moment(inputdate).format(); }

然后您可以在ts文件中使用它:

this.registered = dateUtilsService.formatDate(registered);