Angular-Material устанавливает Datepicker только на дату в Angular7 - PullRequest
0 голосов
/ 22 сентября 2019

Я использую Angular-7 для приложения веб-портала.У меня есть средство выбора даты, из которого я хотел бы получить дату только без отметки времени.Также он должен быть в следующем формате: дд / мм / гггг

Вот как это выглядит на веб-интерфейсе:

datepicker

<div class="col-xs-6">
  <label for="loading_date">Loading Date</label>
  <div class="input-group date">
    <mat-form-field>
      <input matInput [matDatepicker] = "picker" placeholder = "Choose a date" name="loading_date" [(ngModel)]="quoteModel.loading_date" #loading_date="ngModel" [ngClass]="{'is-invalid' : loading_date.invalid && ((loading_date.dirty || loading_date.touched) || quoteform.submitted)}"   required>
     <mat-datepicker-toggle matSuffix [for] = "picker"></mat-datepicker-toggle>
     <mat-datepicker #picker></mat-datepicker>
    </mat-form-field>
  <div class="form-feedback" *ngIf="loading_date.invalid && ((loading_date.dirty || loading_date.touched) || quoteform.submitted)">
  <div style="color:red;" *ngIf="loading_date.errors?.required"class="alert alert-danger">Loading Date is required.</div>
  </div>
  </div>
</div>

I Когда я отправляюсь в базу данных, я хочу получить результат в следующем формате:

2019-09-26

Но это то, что я получаю:

2019-09-26T23: 00: 00.000Z

Как мне этого добиться?

1 Ответ

0 голосов
/ 22 сентября 2019

Вы можете использовать moment для достижения этой цели;

npm i moment --save

Попробуйте это

var dateToDB = moment(loading_date).format("YYYY-MM-DD");

Или вы можете использовать DatePipe

@Injectable()
import { DatePipe } from '@angular/common';
class MyService {

  constructor(private datePipe: DatePipe) {}

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

В вашем app.module.ts

providers: [DatePipe,...] 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...