Tengo dos preguntas.
1) CSS Loader y Style Loader son dos cargadores de paquetes web. No pude entender la diferencia entre los dos. ¿Por qué tengo que usar dos cargadores cuando ambos hacen el mismo trabajo?
2) ¿Qué es esto .useable.less y .useable.css mencionado en los archivos Readme.md anteriores?
webpack
webpack-style-loader
Anvesh Checka
fuente
fuente
Respuestas:
El cargador de CSS toma un archivo CSS y devuelve el CSS con
imports
yurl(...)
resuelto a través de larequire
funcionalidad del paquete web :En realidad, no hace nada con el CSS devuelto.
El cargador de estilos toma CSS y en realidad lo inserta en la página para que los estilos estén activos en la página.
Realizan diferentes operaciones, pero a menudo es útil encadenarlos, como las tuberías Unix. Por ejemplo, si estaba usando el preprocesador Less CSS , podría usar
a
file.less
en CSS simple con el cargador Lessimports
eurl(...)
s en el CSS con el cargador CSSfuente
<style>
etiqueta" (esto se copia de la documentación oficial en github.com/webpack/style-loader )imports
supongo que se refieren a@import
las directivas. Por defecto, esta directiva no combina las reglas CSS importadas en el importador, sino que crea otraGET
solicitud. ¿Estás diciendo quecss-loader
devolverá una salida combinada?css-loader
lee en un archivo css como una cadena. Puede reemplazarloraw-loader
y obtener el mismo efecto en muchas situaciones. Como solo lee el contenido del archivo y nada más, es básicamente inútil a menos que lo encadene con otro cargador.style-loader
toma esos estilos y crea una<style>
etiqueta en el<head>
elemento de la página que contiene esos estilos.Si observa el javascript dentro
bundle.js
después de usarlostyle-loader
, verá un comentario en el código generado que dicePor ejemplo,
Ese ejemplo proviene de este tutorial . Si quita el
style-loader
de la tubería cambiando la líneaa
Verás que
<style>
desaparece.fuente
css-loader
en lugar deraw-loader
?Para responder a la segunda pregunta "¿Qué es esto .useable.less y .useable.css mencionado en los archivos Readme.md anteriores?", De forma predeterminada cuando un estilo es
require'd
, el módulo cargador de estilos inyecta automáticamente una<script>
etiqueta en el DOM, y esa etiqueta permanece en el DOM hasta que la ventana del navegador se cierra o se vuelve a cargar. El módulo cargador de estilos también ofrece una llamada "API contada por referencia" que permite al desarrollador agregar estilos y eliminarlos más tarde cuando ya no los necesite. La API funciona así:Por convención, las hojas de estilo cargadas usando esta API tienen una extensión ".usable.css" en lugar de simplemente ".css" como se indicó anteriormente.
fuente
La documentación de Webpack recomienda combinar style-loader con css-loader:
https://webpack.js.org/loaders/style-loader/
fuente