Преобразовать ддмммггг ЧЧ: мм в дд-мм-гггг ЧЧ: мм в Angular6 - PullRequest
0 голосов
/ 18 января 2019

Формат даты, который я получаю из ответа API, выглядит следующим образом.

"startDate" : "07112018 00:00".

Я хочу преобразовать это в формат дд-мм-гггг ЧЧ: мм. вот так 07-11-2018 00:00. Может кто-нибудь подскажите, пожалуйста, как это сделать с помощью Angular 6.

Ответы [ 2 ]

0 голосов
/ 19 января 2019

попробуйте эту функцию для преобразования формата времени, как вам требуется

timeFormetChange(){
 var date =new Date();
 var newDate = date.getDate();
 var newMonth = date.getMonth();
 var newYear =date.getFullYear();
 var Hour = data.getHours();
 var Minutes = data.getMinuets();
 return `${newDate}-${newMonth }-${newYear} ${Hour}:${Minutes }`
}
0 голосов
/ 18 января 2019

Для этого вы можете использовать API DatePipe: https://angular.io/api/common/DatePipe

@Component({
 selector: 'date-pipe',
 template: `<div>
   <p>Today is {{today | date}}</p>
   <p>Or if you prefer, {{today | date:'fullDate'}}</p>
   <p>The time is {{today | date:'h:mm a z'}}</p> //format in this line
 </div>`
})
// Get the current date and time as a date-time value.
export class DatePipeComponent {
  today: number = Date.now();
}

и это то, что вы на самом деле хотите:

{{myDate | date: 'dd-MM-yyyy'}}

Редактировать: Использование встроенного канала в компоненте ,

import { DatePipe } from '@angular/common';

class MyService {

  constructor(private datePipe: DatePipe) {}

  transformDate(date) {
    return this.datePipe.transform(date, 'yyyy-MM-dd');
  }
}

Пожалуйста, прочитайте эту тему, я взял пример оттуда: https://stackoverflow.com/a/35152297/5955138

Edit2: Как я уже описал в комментарии, вы можете использовать эту дату для подстроки.

var str = '07112018'
var d = new Date(str.substring(0, 2)+'.'+str.substring(2, 4)+'.'+str.substring(4, 8));

Выходные данные: ср. 11 июля 2018 00:00:00 по Гринвичу + 0300

...