Aplicar una tubería o transformación a un valor de Forma reactiva
Estoy construyendo una forma reactiva simple. Para simplificar, digamos que los únicos datos que quiero mostrar es una fecha.
test.component.html
<form novalidate [formGroup]="myForm">
<input type="date" formControlName="date">
</form>
test.component.ts
private date: Date = Date.now();
ngOnInit() {
this.myForm = this.fb.group({
date: [this.date, [Validators.required]]
});
}
El campo input type = date en la plantilla requiere que la fecha tenga el formato 'aaaa-MM-dd'. El valor en el evento es un objeto Fecha de JavaScript.
¿Cómo puedo modificar los datos a nivel de plantilla para que el valor de entrada sea correcto?
Lo que probé:
Una forma de hacerlo sería inyectar DatePipe en mi componente y aplicar la conversión en código.
date: [datePipe.transform(this.event.date, 'yyyy-MM-dd'), [Validators.required]]
Pero esto vincula el detalle de implementación de la plantilla al componente. Por ejemplo, ¿qué pasa si una plantilla NativeScript requiere que la fecha esté en el formatoMM/dd/yyyy
? FormGroup ya no es válido.