Как преобразовать угловую дату локали в правильный формат даты для использования API? - PullRequest
0 голосов
/ 31 мая 2019

Я использую двустороннюю привязку в форме шаблона:

ts:

searchLeaveApplication: any = {};

html:

<mat-form-field class="searchInputs">
  <input
    matInput
    [matDatepicker]="searchStartDate"
    [(ngModel)]="this.searchLeaveApplication.startDate"
    name="startDate"
  />
  <mat-datepicker-toggle
    matSuffix
    [for]="searchStartDate"
  ></mat-datepicker-toggle>
  <mat-datepicker #searchStartDate></mat-datepicker>
</mat-form-field>

Однако я получаю это какдата: enter image description here

Что неприемлемо в качестве формата даты для API (ядро .Net).Как я могу изменить формат на правильный формат даты?Я полагаю, что я не могу использовать конвейеры даты в двухсторонних привязках.

1 Ответ

2 голосов
/ 31 мая 2019

Вы всегда можете импортировать Angular DatePipe или FormatDate в ваш component.ts и преобразовать searchLeaveApplication.startDate в требуемый формат даты и времени, принятый ядром .Net. Полный список предопределенных опций и пользовательских форматов можно найти здесь .

1) Если вы собираетесь использовать DatePipe, вы можете сделать следующее ниже.

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

export class SampleComponent implements OnInit {   

constructor(private datePipe: DatePipe) {}

  saveData() {
    const searchStartDateString = this.datePipe.transform(this.searchLeaveApplication.startDate, 'yyyy-MM-dd');
    // handle the rest
  }
}

Не забудьте добавить DatePipe к вашим провайдерам в вашем модуле.

providers: [DatePipe]

2) В качестве альтернативы вы можете использовать formatDate:

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

export class SampleComponent implements OnInit {

  constructor(@Inject(LOCALE_ID) private locale: string) {}

  saveData() {
    const searchStartDateString = formatDate(this.searchLeaveApplication.startDate, 'MM-yyyy', this.locale);
    // handle the rest
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...