Вы правы, их нужно инициализировать, я отредактировал.

я есть динамически генерируемая Angular 2 FormGroup с несколькими полями ввода FormControl. Некоторые из входных данных являются датами, которые выбираются с сервера как метки времени Unix.

Что я хотел бы сделать, это:

чтобы иметь возможность переводить метку времени Unix в удобочитаемую форму, когда моя FormGroup заполнена, а такжепереведите человеческое представление даты в метку времени Unix при отправке формы.

Часть 1 довольно проста с использованием конвейера даты Angular, например:

<input class="form-control" [formControlName]="question.key"
[value]="this.form.controls[this.question.key].value | date:'dd/MM/yyyy'">

Где this.form - это ссылка на FormGroup, а this.question - это пользовательский класс-оболочка, основанный на официальном руководстве по динамическим формам:

https://angular.io/docs/ts/latest/cookbook/dynamic-form.html

Попытка изменить ввод даты таким способом не будет работать, потому что канал будет постоянно пытаться преобразовать входное значение, таким образом делая ввод непригодным для использования, если не будет выдан неверный аргумент для исключения «DatePipe» для канала.

Чтобы уточнить, я заполняю форму, используяFormGroup.patchValue() API и отправьте данные формы, используяFormGroup.getRawValue() апи.

Я пытался использовать компонент выбора даты в Angular 2, но они делали мои огромные формы довольно медленными, поэтому я хотел бы сделать это без пользовательских средств выбора даты или каких-либо зависимых от jQuery виджетов.

Заранее спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос