Дата ввода даты кендо-datepicker onChange ($ event) в Angular

SilverFish спросил: 28 апреля 2018 в 09:46 в: angular

Мы используем фреймворк Angular 6, .NET mvc. Основываясь на выборе даты, мне нужно передать ее функции и заполнить выпадающий список. Но я не получаю дату в правильном формате. Вот html:

<div class="form-group">
    <label>Select Report Date:</label>
    <kendo-datepicker [(value)]="value" 
          (valueChange)="onChange($event)">
    </kendo-datepicker>
</div>

Вот файл ts.

 public lobs: Array<VTO> = [];
 public value: Date = new Date(); public onChange(value: Date): void {
    console.log('change', value);
    this._vtos.getLOBs(value)
      .subscribe(data => this.lobs = data,
    error => this.errorMsg = error);
 }

на Console.log

change Thu May 10 2018 06:59:26 GMT-0400 (Eastern Daylight Time)

, тогда как мне нужен формат "MM / dd / yyyy", так что я получаю 05/10/2018. Просьба сообщить.

2 ответа

mittal bhatt ответил: 28 апреля 2018 в 09:53
 //use format input like below
<kendo-datepicker
                  [format]="'MM/dd/yyyy'"
                  [value]="value"
              ></kendo-datepicker>
fateme fazli ответил: 28 апреля 2018 в 11:13
Try:
public onChange(value: Date): void {
    console.log('change', this.getFormattedDate(value));
    this._vtos.getLOBs(value)
      .subscribe(data => this.lobs = data,
    error => this.errorMsg = error);
 }getFormattedDate(date) {
    let year = date.getFullYear();    let month = (1 + date.getMonth()).toString();
    month = month.length > 1 ? month : '0' + month;    let day = date.getDate().toString();
    day = day.length > 1 ? day : '0' + day;    return month + '/' + day + '/' + year;
}
SilverFish ответил: 28 апреля 2018 в 11:11
Если бы вернула отформатированную дату, какова будет версия для этого кода на машинке?
fateme fazli ответил: 28 апреля 2018 в 11:15
@SilverFish обновил ответ.