⊗jsSpMdWP 203 of 294 menu

Werking van de Webpack bundler in JavaScript

Over het algemeen krijgen we tijdens de ontwikkeling veel JavaScript-bestanden, die verschillende stukjes code bevatten. Dit kunnen delen van onze eigen code zijn, of externe bibliotheken. Het resultaat is dat we elk van deze bestanden moeten koppelen aan het HTML-bestand via de script-tag.

Dit is niet erg goed, omdat veel aangesloten bestanden de snelheid van het laden van de site vertragen. Daarom is het voor het versnellen van het laden nodig om alle code in één bestand te plaatsen.

Het is echter ook niet erg handig om code in één algemeen bestand te ontwikkelen. Daarom wordt momenteel de volgende aanpak gehanteerd: code wordt ontwikkeld in aparte bestanden, en vervolgens met behulp van een bundler verzameld in één algemeen bestand, dat wordt gekoppeld aan het HTML-bestand.

Aparte bestanden zijn ES-modules. Deze modules worden gekoppeld aan andere bestanden via het commando import.

Meestal wordt er een hoofdbestand gemaakt, waaraan de overige bestanden worden gekoppeld. Dit bestand wordt het entry point genoemd.

De bundler gaat naar het entry point, bekijkt welke modules er zijn aangesloten. Aan deze modules kunnen ook andere modules zijn gekoppeld. De bundler volgt alle verbindingen en verzamelt alle code in één bestand. Dit bestand wordt een bundle genoemd.

Over het algemeen bevindt de code die de programmeur schrijft zich in de map src, en de samengestelde code wordt in de map dist geplaatst.

De bundler maakt het ook mogelijk om de buildmodus te regelen. De modus 'development' is bedoeld voor het ontwikkelproces. Hij verzamelt de code op een voor ontwikkeling handige manier. De modus 'production' is bedoeld voor de uiteindelijke code die in productie wordt genomen. In deze modus zal de code worden geminimaliseerd om de grootte ervan te verkleinen en de laadsnelheid te verhogen.

Leg uit wat een bundle is.

Leg uit wat een entry point is.

Leg uit welke buildmodi er zijn.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren