Как я могу отформатировать дату в угловой и машинописной форме?

#angular #typescript

Вопрос:

У меня есть таблица, в которой отображается дата.

В моей таблице отображаются как дата, так и время, но я хочу отображать только дату.

Это мой код:

 import {DatePipe, formatDate} from '@angular/common';
import * as moment from 'moment/moment';

export class RegistrationModel{
    firstName: string;
    lastName: string;
    middleName: string;
    nickname: string;
    createdAt: string;
    applicantCV: string;
    mobileNumber: string;
    emailAddress: string;

    datePipe = new DatePipe('en-US');

  constructor(response){
    //formatDate(this.createdAt, 'M/d/yy', 'en-US');
    this.firstName = response.firstName;
    this.lastName = response.lastName;
    this.middleName = response.middleName;
    this.nickname = response.personalData.nickname;
    this.createdAt = response.createdAt;
    this.datePipe.transform(this.createdAt, 'M/d/yy');
    this.applicantCV = response.applicantCV;
    this.mobileNumber = response.contactInfo.mobileNumber;
    this.emailAddress = response.contactInfo.emailAddress;
  }

}
 

скриншот таблицы

Комментарии:

1. Канал даты возвращает отформатированную строку. Он ничего не делает со своими входными параметрами. Ваш звонок в DatePipe.transform-это отказ от операции.

Ответ №1:

Я предполагаю, что вы забыли переназначить createdAt переменную после преобразования даты.

 this.createdAt = this.datePipe.transform(new Date(this.createdAt), 'M/d/yy');
 

Редактировать

Также кажется, что вы должны сначала привести созданное на сегодняшний день.

Комментарии:

1. За исключением того, что createdAt-это строка, а не дата

2. @RoddyoftheFrozenPeas Я думаю, ты прав. Честно говоря, я даже не посмотрел на DatePipe API, прежде чем ответить на этот вопрос

3. Вау, ваши решения действительно сработали для меня. Огромное спасибо. Я новичок в машинописи, поэтому в будущем у меня может возникнуть много вопросов. Еще раз спасибо