J'ai deux questions.
1) CSS Loader et Style Loader sont deux chargeurs de webpack. Je ne pouvais pas saisir la différence entre les deux. Pourquoi dois-je utiliser deux chargeurs alors qu'ils font tous les deux le même travail?
2) Quels sont ces fichiers .useable.less et .useable.css mentionnés dans les fichiers Readme.md ci-dessus?
webpack
webpack-style-loader
Anvesh Checka
la source
la source
Réponses:
Le chargeur CSS prend un fichier CSS et retourne le CSS avec
imports
eturl(...)
résolu via larequire
fonctionnalité de webpack :Il ne fait pas faire quoi que ce soit avec le CSS retourné.
Le chargeur de style prend CSS et l'insère réellement dans la page afin que les styles soient actifs sur la page.
Ils effectuent différentes opérations, mais il est souvent utile de les enchaîner, comme les tuyaux Unix. Par exemple, si vous utilisiez le préprocesseur Less CSS , vous pourriez utiliser
à
file.less
en CSS simple avec le chargeur Lessimports
eturl(...)
s dans le CSS avec le chargeur CSSla source
<style>
balise" (ceci est copié de la documentation officielle sur github.com/webpack/style-loader )imports
Je suppose que vous faites référence à des@import
directives. Par défaut, cette directive ne fusionne pas les règles CSS importées dans l'importateur, mais crée plutôt une autreGET
demande. Voulez-vous dire quecss-loader
cela renverra une sortie fusionnée?css-loader
lit dans un fichier css une chaîne. Vous pouvez le remplacer parraw-loader
et obtenir le même effet dans de nombreuses situations. Puisqu'il lit simplement le contenu du fichier et rien d'autre, il est fondamentalement inutile à moins que vous ne le chaîniez avec un autre chargeur.style-loader
prend ces styles et crée une<style>
balise dans l'<head>
élément de la page contenant ces styles.Si vous regardez le javascript à l'intérieur
bundle.js
après utilisation,style-loader
vous verrez un commentaire dans le code généré qui ditPar exemple,
Cet exemple provient de ce tutoriel . Si vous supprimez le
style-loader
du pipeline en modifiant la ligneà
vous verrez que
<style>
ça s'en va.la source
css-loader
par opposition àraw-loader
?Pour répondre à la deuxième question "Qu'est-ce que ce .useable.less et .useable.css mentionné dans les fichiers Readme.md ci-dessus?", Par défaut lorsqu'un style est
require'd
, le module de style-loader injecte automatiquement un<script>
balise dans le DOM, et cette balise reste dans le DOM jusqu'à ce que la fenêtre du navigateur soit fermée ou rechargée. Le module de chargement de style propose également une soi-disant «API comptée par référence» qui permet au développeur d'ajouter des styles et de les supprimer plus tard lorsqu'ils ne sont plus nécessaires. L'API fonctionne comme ceci:Par convention, les feuilles de style chargées à l'aide de cette API ont une extension ".usable.css" plutôt que simplement ".css" comme ci-dessus.
la source
La documentation Webpack recommande de combiner style-loader avec css-loader:
https://webpack.js.org/loaders/style-loader/
la source