Moderne Webanwendungen verlassen sich nicht mehr auf ein einziges gro?es JavaScript -Paket. Untersuchungen zeigen, dass gr??ere Pakete den Speicherverbrauch und die CPU-Last erh?hen, insbesondere auf mobilen Ger?ten mit niedrigem und mittlerem Ende. WebPack bietet mehrere Funktionen, um Priorit?ten der Paketgr??e und Steuerung von Ressourcen zu reduzieren. Die Codesegmentierung unterteilt den Code in mehrere Pakete, das auf Anfrage oder parallel geladen wird. Leistungstipps erkennen, ob die Paketgr??e den angegebenen Schwellenwert beim Erstellen überschreitet, um unn?tigen Code zu optimieren oder zu l?schen.
Webpack standardm??ig werden Warnungen ausgestellt, wenn die Ressourcengr??e oder der Einstiegspunkt 250 KB ( webpack.config.js
performance
) überschreitet. In diesem Artikel wird beschrieben, wie diese Funktion als erste Verteidigungslinie verwendet wird, um die Leistungsverschlechterung zu verhindern.
Passen Sie Ihr Budget an
Die Standard -Schwellenwerte für Ressourcen- und Einstiegspunktgr??e entsprechen m?glicherweise nicht immer Ihren Anforderungen, k?nnen jedoch konfiguriert werden. Beispielsweise kann ein kleiner Blog ein Budget von 48,8 Kib (48,8 kib) pro Ressourcen und Einstiegspunkte haben. Die relevanten Einstellungen in webpack.config.js
sind wie folgt:
module.exports = { Leistung: { MaxassetSize: 50000, MaxentryPointsize: 50000, } };
maxAssetSize
und maxEntrypointSize
-Eigenschaften steuern die Schwellengr??e (in Bytes) der Ressource und des Einstiegspunkts. maxEntrypointSize
stellt sicher, dass Pakete, die aus im entry
aufgeführten Dateien erstellt wurden (normalerweise JavaScript- oder SASS -Dateien), den angegebenen Schwellenwert nicht überschreiten. maxAssetSize
erzwingt die gleichen Einschr?nkungen für andere von WebPack generierte Ressourcen (wie Bilder, Schriftarten usw.).
Ein Fehler erscheint, wenn der Schwellenwert überschritten wird
Webpack gibt eine Warnung aus, wenn der Haushaltsschwellenwert standardm??ig überschritten wird. Dies reicht für die Entwicklungsumgebung aus, jedoch nicht für die Produktionsumgebung. Sie k?nnen einen Fehler ausl?sen, indem Sie hints
Eigenschaftseigenschaft zum performance
hinzufügen und auf 'error'
einstellen:
module.exports = { Leistung: { MaxassetSize: 50000, MaxentryPointsize: 50000, Hinweise: 'Fehler', } };
Andere gültige Werte für hints
sind 'warning'
und false
. false
deaktiviert die Warnung vollst?ndig, auch wenn die angegebene Grenze überschritten wird. Es wird nicht empfohlen, im Produktionsmodus false
zu verwenden.
Bestimmte Ressourcen ausschlie?en
WebPack erzwingt einen Gr??enschwellenwert für jede Art von Ressource, die es generiert. Wenn eine Ressource die angegebene Grenze überschreitet, wird ein Fehler geworfen. Wenn WebPack beispielsweise so konfiguriert ist, dass Bilder verarbeitet werden, tritt ein Fehler auf, solange eines der Bilder den Schwellenwert überschreitet.
assetFilter
-Eigenschaft kann verwendet werden, um die Dateien zu steuern, die zur Berechnung der Leistungsaufforderungen verwendet werden:
module.exports = { Leistung: { MaxassetSize: 50000, MaxentryPointsize: 50000, Hinweise: 'Fehler', AssetFilter: Funktion (AssetFileName) { return! assetFileName.endswith ('. jpg'); }, } };
Dies fordert WebPack an, dass Dateien, die in .jpg
enden, beim Ausführen der Berechnungen zur Leistungseingabeaufforderung ausgeschlossen werden. Es kann komplexere Logik verwenden, um die Bedingungen verschiedener Umgebungen, Dateitypen und anderer Ressourcen zu erfüllen.
Limit
Eine aktuelle Einschr?nkung besteht darin, dass der gleiche Haushaltsschwellenwert für alle Ressourcen und Einstiegspunkte gilt. Mit anderen Worten, mehrere Budgets werden noch nicht nach Bedarf festgelegt, z. B. das Festlegen unterschiedlicher Einschr?nkungen für JavaScript, CSS und Bilddateien. Es gibt jedoch bereits offene Zuganfragen, die diese Einschr?nkung beseitigen sollten.
Zusammenfassen
Zu Beginn des Projekts ist es nützlich, Leistungsbudgets einzurichten und durchzusetzen. Es wird Sie daran erinnern, auf die Gr??e Ihrer Abh?ngigkeiten zu achten und Sie zu ermutigen, leichtere Alternativen zu finden, um das Budget zu vermeiden.
Aber das Leistungsbudget h?rt hier nicht auf! Ressourcengr??e ist nur einer von vielen Faktoren, die die Leistung beeinflussen. Daher ist weiterhin mehr Arbeit erforderlich, um sicherzustellen, dass die beste Erfahrung bereitgestellt wird. Das Ausführen von Leuchtturmtests ist eine gro?artige M?glichkeit, andere Metriken und Verbesserungsvorschl?ge zu verstehen.
Das obige ist der detaillierte Inhalt vonDurchsetzung von Leistungsbudgets mit Webpack. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

Es gibt drei M?glichkeiten, CSS auf einer bestimmten Seite selektiv aufzunehmen: 1. Inline -CSS, geeignet für Seiten, auf die nicht h?ufig zugegriffen wird oder einzigartige Stile erfordern. 2. Laden Sie externe CSS -Dateien mit JavaScript -Bedingungen, die für Situationen geeignet sind, in denen Flexibilit?t erforderlich ist. 3. Containment auf der Serverseite, geeignet für Szenarien mit serverseitigen Sprachen. Dieser Ansatz kann die Leistung und die Wartbarkeit der Website optimieren, erfordert jedoch ein Gleichgewicht zwischen Modularit?t und Leistung.

FlexBoxisidealForone-dimensionAllayouts, w?hrend GridSuitStwo-dimensional, komplexeLayouts.seflexBoxForAnGingItemsinasingleaxisandGridForPreciseControloverrowsandColumnSininTridrideseseseses-Signs.

Das HTML-Popover-Attribut verwandelt Elemente in Top-Layer-Elemente, die mit einer Taste oder einem JavaScript ge?ffnet und geschlossen werden k?nnen. Popovers k?nnen auf eine Reihe von M?glichkeiten abgewiesen werden, aber es gibt keine M?glichkeit, sie automatisch einzuschlie?en. Preethi hat eine Technik, die Sie k?nnen

CSS -Bl?cke Seitenrenderung, da Browser inline und externe CSS standardm??ig als wichtige Ressourcen anzeigen, insbesondere mit importierten Stylesheets, Header gro?er Mengen an Inline -CSS und nicht optimierten Medienfragestilen. 1. extrahieren kritische CSS und einbetten Sie es in HTML ein; 2. Verz?gerung des Ladens nichtkritischer CSS durch JavaScript; 3.. Verwenden Sie Medienattribute, um das Laden wie Druckstile zu optimieren. 4. Komprimieren und verschmelzen CSS, um Anfragen zu reduzieren. Es wird empfohlen, Tools zum Extrahieren von Schlüssel -CSS zu verwenden, REL = "Vorspannung" zu kombinieren, und verwenden Sie die asynchrone Belastung und verwenden Sie die Medienverz?gerungsladeverletzung, um eine überm??ige Aufteilung und eine komplexe Skriptsteuerung zu vermeiden.

Im folgenden Tutorial werde ich Ihnen zeigen, wie Sie Lottie -Animationen in Figma erstellen. Wir werden zwei farbenfrohe Designs verwenden, um zu veranlassen, wie Sie in Figma animieren k?nnen, und dann werde ich Ihnen zeigen, wie Sie von Figma zu Lottie -Animationen wechseln. Alles was Sie brauchen ist eine kostenlose Feige

Wir haben es auf die Probe gestellt und es stellt sich heraus, dass Sass JavaScript zumindest bei Logik und Puzzle-Verhalten auf niedriger Ebene ersetzen kann. Mit nichts als Karten, Mixins, Funktionen und einer Menge Mathematik haben wir es geschafft, unser Tangram -R?tsel zum Leben zu erwecken, nein J

ThebestApproachforcssDependsonTheProject'Sspecificneeds.forlargerProjects, externalcssisbetterDuetomaintainability;
