Как использовать Angular FormBuilder с mat-datapicker Angular Material - PullRequest
0 голосов
/ 13 мая 2019

В настоящее время я пытаюсь использовать mat-datepicker с Angular Form Builder.Единственная проблема заключается в том, что mat-datepicker вернет выбранное значение как объект Date вместо строки.Это не позволяет немедленно передать значение из mat-datepicker в formGroup, а затем отправить его как запрос на сервер без предварительного преобразования его в строку.

Кроме того, использование средства выбора даты материала предлагает различные способы изменения значений , проанализированные и отформатированные , однако это все еще объект даты, который возвращается.Следующее значение представляет собой стек , который доказывает, что mat-datepicker возвращает объект вместо ожидаемой строки.Вам нужно открыть консоль, чтобы увидеть значение.

Если у вас есть какие-либо рекомендации о том, как я могу предоставить значение со стороны модуля, чтобы mat-datepicker возвращала строку вместо датыобъект, это будет очень высоко ценится.Спасибо.

Я также отправил запрос здесь: https://github.com/angular/components/issues/16010

1 Ответ

0 голосов
/ 13 мая 2019

Вы можете преобразовать его в строку с помощью функции ( typecript ):

    /**
     * Convert date to string with 'dd/MM/yyyy' format
     *
     * @param date: Date
     */
    dateFormat(date: Date): string {
        const month = date.getMonth() + 1;
        const day = date.getDate();
        const year = date.getFullYear();
        if (date) {
            return `${day}/${month}/${year}`;
        }

        return '';
    }

Пример:

   let date = Wed May 15 2019 00:00:00 GMT+0700 (Indochina Time)
   console.log('Convert Date : ', dateFormat(date));
   Result: 15/05/2019
...