Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 24383|Svar: 4

[Kantet] Angular 9 serie (1) dynamisk belastede komponenter

[Kopier link]
Opslået på 29/05/2020 16.40.00 | | | |
Angular 9 serie (1) dynamisk belastede komponenter
https://www.itsvse.com/thread-9238-1-1.html

Parametre for vinkel 9-serie (2) dynamiske komponenttransmissionsparametre
https://www.itsvse.com/thread-9245-1-1.html

Angular 9-serie (3) abonnerer på dynamiske komponentbegivenheder
https://www.itsvse.com/thread-9246-1-1.html

Angular 9 Series (IV) specialrørledninger
https://www.itsvse.com/thread-9248-1-1.html

Angular 9 Series (V) formaterer beløbsvalutaformatet
https://www.itsvse.com/thread-9249-1-1.html



Skabelonen for en komponent vil ikke altid være fast. Din app kan have brug for at indlæse nogle nye komponenter under kørsel.

Brugsscenarier:

1. Sideindlæsning indlæser forskellige komponenter efter forskellige parametre, hvilket viser forskellige effekter
2. Siden består af flere elementer, ikke alle behøver at vises i starten, og specifik information vises efter brugerens klik, såsom: fane-faner, dynamiske pop-up modalbokse osv.

Brugsscenariet i denne artikel er 2, forestil dig bare,Hvis du ikke bruger dynamisk indlæsning, vil alle de skjulte komponenter på siden blive indlæst, når du åbner hovedgrænsefladen, og alle komponenter kalder deres tilsvarende interface-tjenester, ofte behøver vi ikke at se al informationen, hvilket er et stort ressourcespild og også kan få hovedgrænsefladen til at loade langsomt, hvilket påvirker brugeroplevelsen

Der er to måder at dynamisk belaste komponenter i ng på:

Indlæs allerede deklarerede komponenter: Brug ComponentFactoryResolver til at gengive en instans af en komponent til en anden komponentvisning;
Opret og indlæs komponenter dynamisk: Brug ComponentFactory og Compiler til at oprette og gengive komponenter
Ifølge vores behov udvikles de enkelte komponenter på forhånd og skal vises på samme komponent. Så den første måde opfylder vores krav.

For dynamisk at indlæse komponenter ved hjælp af ComponentFactoryResolver, skal du forstå følgende koncepter:

  • ViewChild: Property decorator, hvorigennem du kan få de tilsvarende elementer på visningen;
  • ViewContainerRef: En view-container, hvor komponenter kan oprettes og slettes;
  • ComponentFactoryResolver: En komponentparser, der kan gengive én komponent på en visning af en anden.

Lad os først se på renderingerne, klik på modal1-knappen for dynamisk at indlæse modal1-komponenten, og klik på modal2-knappen for dynamisk at indlæse modal2-komponenten.



Først skaber vi et vinkelprojekt.

Opret 4 komponenter, nemlig indeks, modal1, modal2 og modal3, hvoraf modal1 og modal2 er vores dynamisk belastede komponenter.

Indekskomponent

html:

TS:

modal1-komponent

html:

TS:


modal2-komponent

html:


TS:

modal3-komponent

html:


TS:


Vi trykte deres navne på konstruktøren for 3 modaler.

modal1 og modal2 indlæses begge dynamisk, kun når knappen trykkes for at indlæse, bliver eksekveringskonstruktøren aktiveret, modal3 bruger ikke dynamisk indlæsning, og efter at forældregrænsefladen er indlæst, vil modal3-grænsefladekonstruktøren blive udført straks.

På denne måde kan du se fordelene ved dynamisk indlæsning, og den vil ikke indlæses, hvis du ikke bruger den, ligesom doven indlæsning i C#.

Kildekode-download:

Turister, hvis I vil se det skjulte indhold i dette indlæg, så vær venligSvar


Ressourcer:Hyperlink-login er synlig.






Tidligere:CSS-indstillingshøjde: 100% ugyldig løsning
Næste:Azure DevOps 2020 (1) Første introduktion til Microsoft Azure DevOps (TFS)
 Udlejer| Opslået på 24/07/2020 17.52.58 |
Angular 9 serie (1) dynamisk belastede komponenter
https://www.itsvse.com/thread-9238-1-1.html

Parametre for vinkel 9-serie (2) dynamiske komponenttransmissionsparametre
https://www.itsvse.com/thread-9245-1-1.html

Angular 9-serie (3) abonnerer på dynamiske komponentbegivenheder
https://www.itsvse.com/thread-9246-1-1.html

Angular 9 Series (IV) specialrørledninger
https://www.itsvse.com/thread-9248-1-1.html

Angular 9 Series (V) formaterer beløbsvalutaformatet
https://www.itsvse.com/thread-9249-1-1.html

Angular 9-serie (VI) kalder native JS-variabler og -metoder
https://www.itsvse.com/thread-9254-1-1.html

Angular 9-serie (VII) CSS-lignende sigtemod
https://www.itsvse.com/thread-9264-1-1.html

Angular 9-serie (VIII) opdaterer værdien af en underkomponent ved at udløse en hændelse via et sæt
https://www.itsvse.com/thread-9267-1-1.html

Angular 9 Series (ni) #id vælger anvendt på siden
https://www.itsvse.com/thread-9278-1-1.html

Angular 9-serien (10) indlejrer vconsole og eruda udvikler debugging-paneler
https://www.itsvse.com/thread-9286-1-1.html

Angular 9 Serie (XI) 5 måder at definere stilarter på
https://www.itsvse.com/thread-9305-1-1.html


Angular 9-serien (XII) genererer dynamiske tokens baseret på OTP'er
https://www.itsvse.com/thread-9325-1-1.html
 Udlejer| Opslået på 02/02/2021 13.56.30 |
Angular 10-serien (tretten) introducerer Baidu echarts-diagrammer
https://www.itsvse.com/thread-9347-1-1.html

Angular 11-serie (XIV) produktionsmiljø til fejlfinding
https://www.itsvse.com/thread-9348-1-1.html

Angular 11 Series (XV) opnår komponenthøjde og justerer dynamisk højden
https://www.itsvse.com/thread-9364-1-1.html

Angular 11-serie (16) side parsing HTML-kildekode
https://www.itsvse.com/thread-9376-1-1.html
Opslået på 26/10/2022 17.27.19 |
Lær!!!!!!!!!!!!!
 Udlejer| Opslået på 30/04/2025 14.38.35 |
ComponentFactoryResolverUdfaset

Ændringerne er som følger:
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com