Lo stessa struttura del form mostrata nelle pubblicazioni precedenti, tipizzazione inclusa, può essere ricreata utilizzando la classe FormBuilder. Nel caso in cui volessimo disabilitare tutti i campi nulli, la stesura risulterà anche più pulita, in quanto sarà l'istanza iniettata, NonNullableFormBuilder, a creare i controlli adatti senza la necessità di specificarne l'opzione.
import { NonNullableFormBuilder } from '@angular/forms'; @Component({}) export class AppComponent { // form default profileForm = this.fb.group({ firstName: this.fb.nonNullable.control(""), lastName: '', address: this.fb.group({ street: '', city: '', }) }); // form non nullabile profileForm1 = this.fb1.group({ firstName: '', lastName: '', address: this.fb.group({ street: '', city: '', }) }); constructor(private fb: FormBuilder,private fb1: NonNullableFormBuilder) {} }
Nello snippet seguente troviamo un caso comune di definizione di un FormGroup, nel quale il form è definito all'interno dell'implementaizone dell'interfaccia OnInit. Benchè questa formulazione sia corretta, non permette all'intellisense di pre-analizzare il codice e fornire il corretto supporto allo sviluppatore. In questo caso qualsiasi valore venga richiesto sarà interpretato come tipo any.
export class AppComponent implements OnInit { profileForm:FormGroup; constructor(private fb: FormBuilder) {} ngOnInit(){ profileForm = this.fb.group({ firstName: '' lastName: '' }); // any const formValues = profileForm.value; // any const name = profileForm.value.firstName; // any const lastname = profileForm.value.lastName; } }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Estrarre dati randomici da una lista di oggetti in C#
Rendere le variabili read-only in una pipeline di Azure DevOps
Eseguire script pre e post esecuzione di un workflow di GitHub
Utilizzare Hybrid Cache in .NET 9
Potenziare la ricerca su Cosmos DB con Full Text Search
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Utilizzare WhenEach per processare i risultati di una lista di task
Utilizzare una qualunque lista per i parametri di tipo params in C#
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Recuperare l'ultima versione di una release di GitHub
Path addizionali per gli asset in ASP.NET Core MVC
I più letti di oggi
- Creare agenti facilmente con Azure AI Agent Service
- Loggare le query più lente con Entity Framework
- Disabilitare le run concorrenti di una pipeline di Azure DevOps
- Rendere i propri workflow e le GitHub Action utilizzate più sicure
- Gestione degli eventi nei Web component HTML
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9
- Fornire parametri ad un Web component HTML