|

Požiadavka: V predchádzajúcich projektoch .NET Framework MVC sa JS a CSS mohli spájať a komprimovať pomocou knižnice tried Microsoft.AspNet.Web.Optimization. Ako môžem zväzovať a komprimovať existujúce súbory JS a CSS pri používaní ASP.NET Core?
NET Framework projektu je uvedený odkaz nižšie:
Ukážka kódu:
Balík
Bundlovanie spája viacero súborov do jedného súboru. Zväzky znižujú počet požiadaviek na server potrebných na vykreslenie webových prostriedkov, napríklad stránok. Môžete vytvoriť ľubovoľný počet jednotlivých zväzkov špeciálne pre CSS, JavaScript atď. Menej súborov znamená menej požiadaviek HTTP od prehliadača na server alebo od služby, ktorá aplikáciu poskytuje. Tým sa zlepšuje výkon načítavania domovskej stránky.
Kompresia
Zmenšovanie odstraňuje z kódu nepotrebné znaky bez zmeny funkčnosti. Výsledkom je výrazné zníženie veľkosti požadovaných zdrojov, ako sú súbory CSS, obrázky a JavaScript. Medzi bežné vedľajšie účinky zmenšovania patrí skrátenie názvov premenných na jeden znak a odstránenie komentárov a zbytočných medzier. Taktiež trochu zahmlieva kód a odrádza ostatných konkurentov od čítania nášho zdrojového kódu.
Zvýšenie výkonu vďaka spájaniu a kompresii
V nasledujúcej tabuľke sú uvedené rozdiely medzi individuálnym načítaním aktív a použitím zväzkovania a zmenšovania:
Šetrí prevádzku z hľadiska sieťového prenosu a zvyšuje rýchlosť načítania a tiež znižuje počet požiadaviek HTTP, čo tiež zlepší rýchlosť načítania.
V prípade hlavičiek požiadaviek HTTP sú prehliadače veľmi podrobné. Metriky celkového počtu odoslaných bajtov sa pri spájaní výrazne znížia. Časy načítania vykazujú výrazné zlepšenie, ale tento príklad beží lokálne. Vyšší nárast výkonu možno dosiahnuť, keď sa zväzkovanie a zmenšovanie používa v spojení s aktívami prenášanými cez sieť.
ASP.NET Core sa nedodáva s riešením na zväzkovanie a kompresiu a vyžaduje si použitie riešenia tretej strany, v tomto prípade "LigerShark.WebOptimizer.Core" (ktoré nakoniec volá NUglify na spracovanie JS a CSS). WebOptimizer.Core" (knižnica v konečnom dôsledku volá NUglify na spracovanie JS a CSS), adresa GitHub: https: //github.com/ligershark/WebOptimizer
Najprv vytvorte nový projekt ASP.NET Core 6, vykonajte nasledujúci odkaz na príkaz:
Vytvorte nový statický priečinok v projekte wwwroot, do ktorého uložíte testovacie súbory css a js. Vytvorte nový súbor css a js, ako je uvedené nižšie:
Upravte súbor Program.cs, aby ste pridali službu WebOptimizer a middleware, hlavný kód je nasledujúci:
Skúste spustiť projekt, zistili sme, že komentáre kódu css a js boli odstránené, súbor bol tiež komprimovaný, v ktorom, niektoré premenné v js boli zredukované na jedno písmeno, ako je uvedené nižšie:
A potom zo statického priečinka vytvoriť nový js súbor, testovacie zväzkové funkcie, bude test.js a test2.js zväzok do súboru common.js (a nebude generovať fyzický súbor common.js), konfiguračný kód je nasledujúci:
Výsledok je nasledujúci:

Reference:
h ttps:// docs.microsoft.com/zh-cn/aspnet/core/client-side/bundling-and-minification?view=aspnetcore-6.0 h ttps:// github.com/ligershark/WebOptimizer
|
Predchádzajúci článok: C# 8.0 môže byť nulový referenčný typNasledujúci článok: [Praktické].NET 6 Náhodné generovanie testu náhodných čísel
|