Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 24383|Odgovoriti: 4

[Angular] Angular 9 serija (1) Dinamično obremenjene komponente

[Kopiraj povezavo]
Objavljeno na 29. 05. 2020 16:40:00 | | | |
Angular 9 serija (1) Dinamično obremenjene komponente
https://www.itsvse.com/thread-9238-1-1.html

Dinamični parametri prenosa komponent serije Angular 9 (2)
https://www.itsvse.com/thread-9245-1-1.html

Serija Angular 9 (3) podpira dinamične dogodke komponent
https://www.itsvse.com/thread-9246-1-1.html

Angular 9 Series (IV) cevovodi po meri
https://www.itsvse.com/thread-9248-1-1.html

Angular 9 Series (V) formatira format valute
https://www.itsvse.com/thread-9249-1-1.html



Predloga komponente ne bo vedno fiksna. Vaša aplikacija bo morda morala med izvajanjem naložiti nove komponente.

Scenariji uporabe:

1. Nalaganje strani nalaga različne komponente glede na različne parametre in prikazuje različne učinke
2. Stran je sestavljena iz več elementov, ni nujno, da so vsi prikazani na začetku, določene informacije pa se prikažejo po kliku uporabnika, kot so: zavihki zavihkov, dinamična pojavna okna itd.

Scenarij uporabe tega članka je 2, samo predstavljajte si,Če ne uporabljate dinamičnega nalaganja, se ob odprtju glavnega vmesnika naložijo vse skrite komponente strani, vse komponente pa pokličejo ustrezne storitve vmesnika, pogosto ne potrebujemo videti vseh informacij, kar je velika izguba virov in lahko povzroči počasno nalaganje glavnega vmesnika, kar vpliva na uporabniško izkušnjo

Obstajata dva načina za dinamično nalaganje komponent v ng:

Naloži že deklarirane komponente: Uporabi ComponentFactoryResolver za upodabljanje primerka komponente v drug pogled komponente;
Dinamično ustvarjajte in nalagajte komponente: Uporabite ComponentFactory in Compiler za ustvarjanje in upodabljanje komponent
Glede na naše potrebe so posamezne komponente razvite vnaprej in jih je treba prikazati na isti komponenti. Torej prvi način ustreza našim zahtevam.

Za dinamično nalaganje komponent z uporabo ComponentFactoryResolverja morate razumeti naslednje koncepte:

  • ViewChild: Property dekorator, preko katerega lahko dobite ustrezne elemente na pogledu;
  • ViewContainerRef: Vsebnik za pogled, v katerem je mogoče ustvariti in izbrisati komponente;
  • ComponentFactoryResolver: Razčlenjevalnik komponent, ki lahko upodablja eno komponento v pogledu druge.

Najprej si poglejmo upodabljanja, kliknite gumb modal1 za dinamično nalaganje komponente modal1 in kliknite gumb modal2 za dinamično nalaganje komponente modal2.



Najprej ustvarimo kotni projekt.

Ustvarite 4 komponente, in sicer indeks, modal1, modal2 in modal3, pri čemer sta modal1 in modal2 naši dinamično naloženi komponenti.

Indeksna komponenta

html:

TS:

Modal1 komponenta

html:

TS:


Modal2 komponenta

html:


TS:

Modal3 komponenta

html:


TS:


Njihova imena smo natisnili na konstruktor za 3 modale.

Modal1 in Modal2 sta oba dinamično nalagana, le ko se klikne gumb za nalaganje, se sproži konstruktor izvajanja, Modal3 ne uporablja dinamičnega nalaganja, po nalaganju nadrejenega vmesnika se konstruktor vmesnika Modal3 izvede takoj.

Na ta način lahko vidiš prednosti dinamičnega nalaganja, ki se ne bo naložil, če ga ne uporabljaš, podobno kot leno nalaganje v C#.

Prenos izvorne kode:

Turisti, če želite videti skrito vsebino te objave, prosimOdgovoriti


Sredstva:Prijava do hiperpovezave je vidna.






Prejšnji:Višina nastavitev CSS: 100 % neveljavna rešitev
Naslednji:Azure DevOps 2020 (1) First Introduction to Microsoft Azure DevOps (TFS)
 Najemodajalec| Objavljeno na 24. 07. 2020 17:52:58 |
Angular 9 serija (1) Dinamično obremenjene komponente
https://www.itsvse.com/thread-9238-1-1.html

Dinamični parametri prenosa komponent serije Angular 9 (2)
https://www.itsvse.com/thread-9245-1-1.html

Serija Angular 9 (3) podpira dinamične dogodke komponent
https://www.itsvse.com/thread-9246-1-1.html

Angular 9 Series (IV) cevovodi po meri
https://www.itsvse.com/thread-9248-1-1.html

Angular 9 Series (V) formatira format valute
https://www.itsvse.com/thread-9249-1-1.html

Angular 9 serija (VI) kliče nativne JS spremenljivke in metode
https://www.itsvse.com/thread-9254-1-1.html

Angular 9 serija (VII) CSS-stil daljnogled
https://www.itsvse.com/thread-9264-1-1.html

Serija Angular 9 (VIII) posodablja vrednost podkomponente tako, da sproži dogodek preko množice
https://www.itsvse.com/thread-9267-1-1.html

Angular 9 Series (devet) #id izbirnik uporabljen na strani
https://www.itsvse.com/thread-9278-1-1.html

Angular 9 serija (10) vključuje vconsole in eruda razvijalske plošče za odpravljanje napak
https://www.itsvse.com/thread-9286-1-1.html

Angular 9 Series (XI) 5 načinov za opredelitev slogov
https://www.itsvse.com/thread-9305-1-1.html


Angular 9 serija (XII) generira dinamične žetone na podlagi OTP-jev
https://www.itsvse.com/thread-9325-1-1.html
 Najemodajalec| Objavljeno na 2. 02. 2021 13:56:30 |
Serija Angular 10 (trinajst) uvaja Baidu echarts karte
https://www.itsvse.com/thread-9347-1-1.html

Produkcijsko okolje serije Angular 11 (XIV) za odpravljanje napak
https://www.itsvse.com/thread-9348-1-1.html

Serija Angular 11 (XV) pridobiva višino komponent in dinamično prilagaja višino
https://www.itsvse.com/thread-9364-1-1.html

Angular 11 serija (16) strani z razčlenjevanjem izvorne HTML kode
https://www.itsvse.com/thread-9376-1-1.html
Objavljeno na 26. 10. 2022 17:27:19 |
Učite se!!!!!!!!!!!!!
 Najemodajalec| Objavljeno na 30. 04. 2025 14:38:35 |
ComponentFactoryResolverZastarelo

Spremembe so naslednje:
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com