6. 로더의 도입
로더는 웹팩의 핵심이라고 할 수 있음
HTML에 CSS를 link로 연결했을때,
다운로드 되는 파일은 style.css와 index_bundle.js 총 2가지이다.
js처럼 css도 번들링 할 수 없을까?
loader
입력한 asset(css, jpg...)들을 가공되어 원하는 output을 출력하는 일종의 가공공정
module: {
rules: [
{
test: /\/.css$/i,
use: ['style-loader', 'css-loader'],
},
],
},
뒤쪽에 있는 로더가 먼저 실행됨, 위의 코드에서는 'css-loader'가 먼저 실행되는데, 이를 체이닝이라고 함
CSS를 번들링하기위해 필요한 loader를 설치한다.
install
npm install --save-dev style-loader css-loader // --save-dev는 -D와 동일함
css-loader
npm install --save-dev style-loader css-loader // --save-dev는 -D와 동일함
'css-loader'
는 css파일을 읽어서 웹팩으로 가져오는 역할
webpack.config.js에 아래를 추가한다.
module: {
rules: [
{
test: /\.css$/i,
use: ['css-loader'],
},
],
},
위와 같이 입력시, css 적용이 안된채로 콘솔에 css의 내용이 js형태로 출력된다.
css
[Array(3), toString: ƒ, i: ƒ]
0: (3) ['./source/style.css', 'body {\r\n background-color: paleturquoise;\r\n color: tomato;\r\n}', '']
i: ƒ i(modules, media, dedupe, supports, layer)
toString: ƒ toString()
length: 1
[[Prototype]]: Array(0)
style-loader
'style-loader'
는 가져온 파일을 style태그로 웹페이지에 주입해주는역할
webpack.config.js에 아래를 추가한다.
module: {
rules: [
{
test: /\/.css$/i,
use: ['style-loader', 'css-loader'],
},
],
},
index_bundle.js파일만 읽어왔음에도, head에 style태그가 만들어졌고 css파일이 적용되었음을 확인할 수 있다.
test
: /\/.css$/i, : 확장자가 ss인 파일들을 처리하는 방법을 웹팩에게 명시
✨ 참고
https://webpack.kr/guides/asset-management/
Author And Source
이 문제에 관하여(6. 로더의 도입), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@minbok/6.-로더의-도입저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)