Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 24383|Risposta: 4

[Angolare] Componenti dinamici a carica dinamica della serie Angular 9 (1)

[Copiato link]
Pubblicato su 29/05/2020 16:40:00 | | | |
Componenti dinamici a carica dinamica della serie Angular 9 (1)
https://www.itsvse.com/thread-9238-1-1.html

Parametri di trasmissione dinamici dei componenti della serie Angular 9 (2)
https://www.itsvse.com/thread-9245-1-1.html

La serie Angular 9 (3) si abscrive agli eventi dinamici a componente
https://www.itsvse.com/thread-9246-1-1.html

Tubazioni personalizzate Angular 9 Series (IV)
https://www.itsvse.com/thread-9248-1-1.html

Serie Angular 9 (V) formata il formato di valuta di quantità
https://www.itsvse.com/thread-9249-1-1.html



Il modello di un componente non sarà sempre fisso. La tua app potrebbe dover caricare nuovi componenti durante l'esecuzione.

Scenari di utilizzo:

1. Il caricamento delle pagine carica componenti diversi secondo parametri differenti, mostrando effetti differenti
2. La pagina è composta da più elementi, non tutti devono essere visualizzati all'inizio, e informazioni specifiche verranno mostrate dopo i clicchi dell'utente, come: schede a schede, finestre modali dinamiche a pop-up, ecc.

Lo scenario d'uso di questo articolo è 2, immagina solo,Se non usi il caricamento dinamico, quando apri l'interfaccia principale, tutti i componenti nascosti della pagina verranno caricati e tutti i componenti richiameranno i rispettivi servizi di interfaccia; spesso, non abbiamo bisogno di vedere tutte le informazioni, il che è uno spreco di risorse e può anche causare un caricamento lento dell'interfaccia principale, influenzando l'esperienza utente

Ci sono due modi per caricare dinamicamente i componenti in ng:

Caricare componenti già dichiarati: Usa ComponentFactoryResolver per renderizzare un'istanza di un componente in un'altra vista componente;
Crea e carica i componenti dinamicamente: Usa ComponentFactory e Compiler per creare e renderizzare componenti
Secondo le nostre esigenze, i singoli componenti sono sviluppati in anticipo e devono essere visualizzati sullo stesso componente. Quindi il primo modo soddisfa i nostri requisiti.

Per caricare dinamicamente i componenti usando ComponentFactoryResolver, è necessario comprendere i seguenti concetti:

  • ViewChild: Decoratore di proprietà, attraverso il quale puoi ottenere gli elementi corrispondenti nella vista;
  • ViewContainerRef: Un container di visualizzazione su cui i componenti possono essere creati ed eliminati;
  • ComponentFactoryResolver: Un parser di componenti che può renderizzare un componente su una vista di un altro.

Per prima cosa, guardiamo i rendering, clicchiamo sul pulsante modal1 per caricare dinamicamente il componente modal1, e clicchiamo sul pulsante modal2 per caricare dinamicamente il componente modal2.



Per prima cosa, creiamo un progetto angolare.

Crea 4 componenti, ovvero indice, modale1, modale 2 e modale 3, di cui modale 1 e modale 2 sono i nostri componenti dinamicamente carichi.

Componente indice

HTML:

TS:

Componente modal1

HTML:

TS:


Componente modal2

HTML:


TS:

Componente modal3

HTML:


TS:


Abbiamo stampato i loro nomi sul costruttore per 3 modali.

Modal1 e modal2 sono entrambi caricati dinamicamente, solo quando si preme il pulsante per caricare, verrà attivato il costruttore di esecuzione, modal3 non utilizza il caricamento dinamico; dopo il caricamento dell'interfaccia genitore, il costruttore di interfaccia modal3 verrà eseguito immediatamente.

In questo modo, puoi vedere i vantaggi del caricamento dinamico, e non si caricherà se non lo usi, simile al caricamento pigro in C#.

Scarica codice sorgente:

Turisti, se volete vedere il contenuto nascosto di questo post, vi pregoRisposta


Risorse:Il login del link ipertestuale è visibile.






Precedente:Altezza dell'impostazione CSS: soluzione 100% invalida
Prossimo:Azure DevOps 2020 (1) Prima Introduzione a Microsoft Azure DevOps (TFS)
 Padrone di casa| Pubblicato su 24/07/2020 17:52:58 |
Componenti dinamici a carica dinamica della serie Angular 9 (1)
https://www.itsvse.com/thread-9238-1-1.html

Parametri di trasmissione dinamici dei componenti della serie Angular 9 (2)
https://www.itsvse.com/thread-9245-1-1.html

La serie Angular 9 (3) si abscrive agli eventi dinamici a componente
https://www.itsvse.com/thread-9246-1-1.html

Tubazioni personalizzate Angular 9 Series (IV)
https://www.itsvse.com/thread-9248-1-1.html

Serie Angular 9 (V) formata il formato di valuta di quantità
https://www.itsvse.com/thread-9249-1-1.html

La serie angolare 9 (VI) chiama variabili e metodi JS nativi
https://www.itsvse.com/thread-9254-1-1.html

Cannaletico in stile CSS della serie Angular 9 (VII)
https://www.itsvse.com/thread-9264-1-1.html

La serie angolare 9 (VIII) aggiorna il valore di un componente figlio attivando un evento tramite un set
https://www.itsvse.com/thread-9267-1-1.html

Selettore di #id Angular 9 Series (nove) applicato sulla pagina
https://www.itsvse.com/thread-9278-1-1.html

La serie Angular 9 (10) incorpora i pannelli di debug degli sviluppatori vconsole ed eruda
https://www.itsvse.com/thread-9286-1-1.html

Serie Angular 9 (XI) 5 modi per definire gli stili
https://www.itsvse.com/thread-9305-1-1.html


Angular 9 series (XII) genera token dinamici basati su OTP
https://www.itsvse.com/thread-9325-1-1.html
 Padrone di casa| Pubblicato su 02/02/2021 13:56:30 |
La serie Angular 10 (tredici) introduce le carte echart di Baidu
https://www.itsvse.com/thread-9347-1-1.html

Ambiente di produzione Angular 11 serie (XIV) per il debug
https://www.itsvse.com/thread-9348-1-1.html

La Serie Angular 11 (XV) acquisisce l'altezza dei componenti e regola dinamicamente l'altezza
https://www.itsvse.com/thread-9364-1-1.html

Pagina Angular 11 (16) che analizza il codice sorgente HTML
https://www.itsvse.com/thread-9376-1-1.html
Pubblicato su 26/10/2022 17:27:19 |
Impara!!!!!!!!!!!!!
 Padrone di casa| Pubblicato su 30/04/2025 14:38:35 |
ComponentFactoryResolverDeprecato

Le modifiche sono le seguenti:
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com