webpack은 module bundler 이다
즉
우리가 많은 파일들을 가져와서 webpack으로 주면
webpack은 완전히 호환되는 static 파일들로 변환해서 주는 것
ex) ES6와 바닐라 자바스크립트를 쓰고있고 또 Sass, 최신JS 것들을 webpack을 통하면
일반적인 CSS와 오래된 자바스크립트로 변환해서 브라우저가 알아들을 수 있도록 해주는 것이다.
설치는 다음과같다.
$ yarn add webpack webpack-cli
$ yarn add extract-text-webpack-plugin@next
$ yarn add css-loader postcss-loader sass-loader autoprefixer node-sass
webpack은 파일에서 webpack을 사용하기 위함이고,
webpack-cli은 터미널에서 webpack을 쓸 수 있게해준다.
extract-text-webpack-plugin@next 는 @next는 최신버전을 사용하겠다는소리고, 본문에서는 SCSS를 CSS로 바꾸고 저장하는 플러그인을 쓰려고 설치한다.
yarn add css-loader postcss-loader sass-loader 은 우리가 webpack을 쓰기위해 필요한 plugin들을 받는 과정이다.
그리고 webpack.config.js 이란파일을 생성해준다.
파일의내용은 아래와같다.
그런다음 package.json에서
start부분을
이렇게 바꾸고
npm run dev:server 그리고 npm run dev:assets 로 각자 다른 콘솔에서 실행시켜야한다.
그리고 누군가 dev:assets 라고 치면, webpack을 불러오도록 해놓을것이다
그러면 webpack은 자동적으로 우리가 만들어 두었던 webpack.config.js 파일을 찾으려고 할것이다.
기본적인규칙으로는
webpack은 exported configuration object를 찾는다
config 파일 안에서 명심해야 될것은 server 코드와는 연관시키지 않는다는 것
100% 클라이언트 코드라는뜻
그리하여 신식코드를 변환시켜줘서 읽는 babel-node는 아직 쓸수가없어서
옛날 자바스크립트를 써야 한다.
entry는 파일들이 어디에서 왔는가? 라는뜻이고
output은 그걸 어디에 넣을 것인가? 라는 의미이다
마지막으로 이렇게바꿔줍니다
scss변경될떄 계속적으로 서버가 껏다켜지는걸 방지하기위한 --ignore 'scss' 이고
-w은 assets에 설정해둔 계속 바뀌고있는걸 상시 감지하기위해서 하는 명령어
'Develop Dairy > JavaScript, React' 카테고리의 다른 글
페이스북인증하기위한 app ID와 app시크릿코드보기 (0) | 2019.04.04 |
---|---|
인증기능 사용하기 PassportJS 모듈 (0) | 2019.04.02 |
ESLint 무언가 틀린게있으면 가르쳐주는 친구 (0) | 2019.03.19 |
MongoDB 기본사용 (0) | 2019.02.28 |
multer middleware(물타 미들웨어) (0) | 2019.02.28 |