Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 24383|Antwoord: 4

[Angular] Angular 9 Series (1) Dynamisch Geladen Componenten

[Link kopiëren]
Geplaatst op 29-05-2020 16:40:00 | | | |
Angular 9 Series (1) Dynamisch Geladen Componenten
https://www.itsvse.com/thread-9238-1-1.html

Hoekige 9-serie (2) dynamische componenttransmissieparameters
https://www.itsvse.com/thread-9245-1-1.html

Hoekige 9-serie (3) sluit dynamische componentgebeurtenissen aan
https://www.itsvse.com/thread-9246-1-1.html

Angular 9 Series (IV) Custom Pipe pijpleidingen
https://www.itsvse.com/thread-9248-1-1.html

Angular 9 Series (V) formateert het bedragsvalutaformaat
https://www.itsvse.com/thread-9249-1-1.html



Het sjabloon van een component is niet altijd vast. Je app moet mogelijk tijdens de runtime nieuwe componenten laden.

Gebruiksscenario's:

1. Paginaladen laadt verschillende componenten volgens verschillende parameters, met verschillende effecten
2. De pagina bestaat uit meerdere elementen, waarvan niet alle aan het begin getoond hoeven te worden, en specifieke informatie wordt weergegeven nadat de gebruiker heeft geklikt, zoals: tabbladen, dynamische pop-up modale vakken, enzovoort.

Het gebruiksscenario van dit artikel is 2, stel je voor,Als je geen dynamisch laden gebruikt, worden bij het openen van de hoofdinterface alle verborgen componenten van de pagina geladen en roepen alle componenten hun bijbehorende interfaceservices aan; vaak hoeven we niet alle informatie te zien, wat een grote verspilling van middelen is en er ook voor kan zorgen dat de hoofdinterface langzaam laadt, wat de gebruikerservaring beïnvloedt

Er zijn twee manieren om componenten dynamisch te laden in ng:

Laad reeds gedeclareerde componenten: Gebruik ComponentFactoryResolver om een instantie van een component naar een andere componentweergave te renderen;
Maak en laad componenten dynamisch: Gebruik ComponentFactory en Compiler om componenten te creëren en te renderen
Volgens onze behoeften worden de individuele componenten vooraf ontwikkeld en moeten ze op hetzelfde onderdeel worden weergegeven. Dus de eerste manier voldoet aan onze eisen.

Om componenten dynamisch te laden met ComponentFactoryResolver, moet je de volgende concepten begrijpen:

  • ViewChild: Property decorator, waarmee je de bijbehorende elementen op de view kunt krijgen;
  • ViewContainerRef: Een view-container waarop componenten kunnen worden aangemaakt en verwijderd;
  • ComponentFactoryResolver: Een componentparser die één component kan weergeven op een weergave van een andere.

Laten we eerst naar de renderings kijken: klik op de modal1-knop om het modal1-component dynamisch te laden, en klik op de modal2-knop om de modal2-component dynamisch te laden.



Eerst creëren we een hoekproject.

Maak 4 componenten, namelijk index, modal1, modal2 en modal3, waarvan modal1 en modal2 onze dynamisch geladen componenten zijn.

Indexcomponent

html:

TS:

modal1-component

html:

TS:


modal2-component

html:


TS:

modal3-component

html:


TS:


We hebben hun namen op de constructor voor 3 modals gedrukt.

modal1 en modal2 worden beide dynamisch geladen; alleen wanneer op de knop wordt geklikt om te laden, wordt de uitvoeringsconstructor geactiveerd, modal3 gebruikt geen dynamische lading, nadat de ouderinterface is geladen, wordt de modal3-interfaceconstructor onmiddellijk uitgevoerd.

Op deze manier zie je de voordelen van dynamisch laden, en het zal niet laden als je het niet gebruikt, vergelijkbaar met lui laden in C#.

Broncode downloaden:

Toeristen, als jullie de verborgen inhoud van dit bericht willen zien, alsjeblieftAntwoord


Weg:De hyperlink-login is zichtbaar.






Vorig:CSS-instellingshoogte: 100% ongeldige oplossing
Volgend:Azure DevOps 2020 (1) Eerste Introductie tot Microsoft Azure DevOps (TFS)
 Huisbaas| Geplaatst op 24-07-2020 17:52:58 |
Angular 9 Series (1) Dynamisch Geladen Componenten
https://www.itsvse.com/thread-9238-1-1.html

Hoekige 9-serie (2) dynamische componenttransmissieparameters
https://www.itsvse.com/thread-9245-1-1.html

Hoekige 9-serie (3) sluit dynamische componentgebeurtenissen aan
https://www.itsvse.com/thread-9246-1-1.html

Angular 9 Series (IV) Custom Pipe pijpleidingen
https://www.itsvse.com/thread-9248-1-1.html

Angular 9 Series (V) formateert het bedragsvalutaformaat
https://www.itsvse.com/thread-9249-1-1.html

Hoekige 9-reeks (VI) roept native JS-variabelen en -methoden aan
https://www.itsvse.com/thread-9254-1-1.html

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

Angular 9 series (VIII) werkt de waarde van een kindcomponent bij door een gebeurtenis te triggeren via een set
https://www.itsvse.com/thread-9267-1-1.html

Angular 9 Series (negen) #id selector toegepast op de pagina
https://www.itsvse.com/thread-9278-1-1.html

Angular 9-serie (10) embedt vconsole- en eruda-ontwikkelaarsdebuggingpanelen
https://www.itsvse.com/thread-9286-1-1.html

Angular 9 Serie (XI) 5 manieren om stijlen te definiëren
https://www.itsvse.com/thread-9305-1-1.html


Angular 9-serie (XII) genereert dynamische tokens op basis van OTP's
https://www.itsvse.com/thread-9325-1-1.html
 Huisbaas| Geplaatst op 02-02-2021 13:56:30 |
Angular 10-serie (dertien) introduceert Baidu echarts-grafieken
https://www.itsvse.com/thread-9347-1-1.html

Angular 11-serie (XIV) productieomgeving voor debugging
https://www.itsvse.com/thread-9348-1-1.html

Angular 11 Series (XV) krijgt componenthoogte en past de hoogte dynamisch aan
https://www.itsvse.com/thread-9364-1-1.html

Angular 11-serie (16) pagina-parsing HTML-broncode
https://www.itsvse.com/thread-9376-1-1.html
Geplaatst op 26-10-2022 17:27:19 |
Leer!!!!!!!!!!!!!
 Huisbaas| Geplaatst op 30-04-2025 14:38:35 |
ComponentFactoryResolverVerouderd

De amendementen zijn als volgt:
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com