A volte abbiamo l'esigenza di mostrare frammenti di UI in base al valore di un campo. Per fare un esempio, supponiamo che l'utente debba decidere come pagare. La UI mette a disposizione una dropdown contententi i valori "Carta di credito" e "Bonifico". Se l'utente seleziona "Carta di credito" la UI mostra i campi per inserire i dati della carta, altrimenti mostra i dati per il bonifico.
La direttiva ngIf è comoda, ma quando il numero di opzioni comincia ad aumentare, richiede un pò di codice HTML. In questi casi torna più comoda la direttiva ngSwitch in associazione con la direttiva ngSwitchCase.
<div [ngSwitch]="paymentType"> <input *ngSwitchCase="'cc'" [formControlName]="cc"> <input *ngSwitchCase="'bb'" [formControlName]="bb"> </div>
La direttiva ngSwitch specifica il campo in base al quale basare lo switch, mentre la direttiva ngSwitchCase decide se renderizzare o meno il frammento di HTML confrontando il valore che gli passiamo col valore del campo specificato in ngSwitch. Nel nostro caso, se l'utente seleziona Carta di credito ("cc"), allora viene renderizzata la prima textbox, altrimenti viene renderizzata la seconda.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare l'espressione if inline in una pipeline di Azure DevOps
Utilizzare Containers in .NET Aspire
Referenziare un @layer più alto in CSS
Generare una User Delegation SAS in .NET per Azure Blob Storage
Utilizzare il metodo ExceptBy per eseguire operazione di sottrazione tra liste
Sfruttare GPT-4o realtime su Azure Open AI per conversazioni vocali
Loggare le query più lente con Entity Framework
Collegare applicazioni server e client con .NET Aspire
Selettore CSS :has() e i suoi casi d'uso avanzati
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Rendere i propri workflow e le GitHub Action utilizzate più sicure
.NET Conference Italia 2024
I più letti di oggi
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
- .NET Conference Italia 2025 - Milano
- The Agentic Day - Milano
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!