|
|
Publicēts 2021-2-7 16:18:25
|
|
|
|

Ja liels skaits lapu izsauc vienu un to pašu skata rezultātu, mēs varam iekapsulēt to pašu saturu skata komponentā, protams, mēs varam arī nodot parametrus skata komponentam un atgriezt atbildes rezultātu, scenārijus: līderu sarakstus, veidlapas, tabulas utt., Šajā rakstā tiek izmantots asp.net core 3.1, lai izskaidrotu, kā izmantot ViewComponent skata komponenta apmācību.
Skatīt komponentus
Skata komponents ir līdzīgs lokālajam skatam, bet jaudīgāks. Skata komponents neizmanto modeļa saistījumus, bet paļaujas tikai uz datiem, kas tiek sniegti, izsaucot modeli. Šis raksts tika uzrakstīts, izmantojot kontrolierus un skatus, bet skata komponentu var izmantot arī ar Razor Pages.
Skatīt komponentus:
- Atveidojiet blokus, nevis visu atbildi.
- Ietver tādu pašu bažu un testējamības priekšrocību nodalīšanu, kas konstatēta starp kontrolieriem un viedokļiem.
- Tam var būt parametri un biznesa loģika.
- Parasti tiek izsaukts no izkārtojuma lapas.
Skata komponentus var izmantot visur, kur ir atkārtoti izmantojama atveidošanas loģika, kas ir pārāk sarežģīta lokālajam skatam, piemēram:
- Dinamiskā navigācijas izvēlne
- Tagu mākonis (kur tiek vaicāts datu bāzē)
- Pieteikšanās panelis
- Iepirkumu grozs
- Nesen publicētie raksti
- Sānjoslas saturs tipiskā emuārā
- Pieteikšanās panelis parādīsies katrā lapā ar saiti, lai izrakstītos vai pieteiktos atkarībā no lietotāja pieteikšanās statusa
Daļējs skats
MVC 5 asp.net mēs varam izmantot vietējo skatu ar šādu kodu:
Zvana metode:
ViewComponent ir alternatīva lokālajiem skatiem.
ViewComponent, lai sāktu darbu
Skatīt komponentu klasi:
- Konstruktora atkarības injekcija ir pilnībā atbalstīta
- Nav iesaistīts kontrollera dzīves ciklā, kas nozīmē, ka skata komponentos nevar izmantot filtrus
- Bez papildu kavēšanās, nonāksim tieši pie punkta, kur mēs vēlamies iekapsulēt pilsētu teritoriju klasifikācijas komponentu funkcionalitāti.
Pirmkārt, projekta direktorijā izveidojiet jaunu mapi "ViewComponents" un izveidojiet jaunu "RootClassification.cs" klases failu ar šādu kodu:
Skata lapā mēs izveidojam jaunu mapi "Komponenti" projekta mapē "/Views/Shared", pēc tam izveidojam jaunu mapi "RootClassification" (tas ir objekts ar jauno komponentu klasi, ko mēs izveidojām) un pēc tam izveidojam jaunu failu "Default.cshtml", kods ir šāds:
Struktūra ir šāda:
Detalizēts ceļš ir: /Views/Shared/Components/RootClassification/Default.cshtml
Kāpēc veidot šādu ceļu? Tas ir saistīts ar to, kā darbojas asp.net Core komponents.
Izpildlaiks meklē skatu šādā ceļā:
/Views/{Controller Name}/Components/{View Component Name}/{View Name}
/Views/Shared/Components/{View Component Name}/{View Name}
/Pages/Shared/Components/{View Component Name}/{View Name} Skata komponenta noklusējuma skata nosaukums ir Noklusējums, kas nozīmē, ka skata faila nosaukums parasti ir Noklusējums.cshtml. Veidojot skata komponenta rezultātu vai izsaucot skata metodi, var norādīt citu skata nosaukumu.
Zvanot, mēs varam zvanīt, kur mums jāizmanto komponents, kods ir šāds:
Atkārtoti palaidiet projektu ar šādu renderēšanu:
|
Vērtējums
-
Skatīt visus vērtējumus
Iepriekšējo:EF Core sērijas (3) entītijas rāmja ēnu atribūti [Atkārtota izdruka]Nākamo:Tīmekļa vietne izmanto swiper spraudni, lai ieviestu attēlu slaidrādi (karuselis)
|