webpack - slahsk/study GitHub Wiki

μ›ΉνŒ© μ„€μΉ˜λ° μ‹€ν–‰

λ¨Όμ € webpack 을 μ„€μΉ˜ν•΄μ•Όν•œλ‹€.

κ°œλ°œν• λ•Œλ§Œ μ‚¬μš©ν•˜κΈ° λ•Œλ¬΄μ— dev 에 μΆ”κ°€ μ‹œν‚¨λ‹€.

npm install --save-dev webpack

webpack μ‹€ν–‰μ‹œν‚€λ©΄

ν”„λ‘œμ νŠΈ λ£¨νŠΈμ— μžˆλŠ” webpack.config.js μ„€μž₯νŒŒμΌμ„ 뢈러 μ˜¨λ‹€.

μ„€μ • νŒŒμΌμ—λŠ” webpack μ‹€ν–‰ μ‹œν‚¬ js파일 있으면

μ‹€ν–‰ν›„ μƒμ„±λ˜λŠ” 파일 μœ„μΉ˜λ° νŒŒμΌμ΄λ¦„μ„ μ„€μ •ν•œλ‹€.

webpack.config.js

module.exports = {
  entry : __dirname + "/app/main.js",
  output : {
    path : __dirname + "/public",
    filename : "bundle.js"
  }

};

main.js

var greeter = require("./Greeter.js");

document.getElementById('root').appendChild(greeter());

Greeter.js

module.exports = function(){
  var greet = document.createElement('div');

  greet.textContent = "hi";
  return greet;


};

파일 생성후 package.json μ—μ„œ npm μ˜΅μ…˜μœΌλ‘œ 이것을 μ‹€ν–‰ μ‹œν‚¬κ²ƒλ‹€.

  "scripts": {
    "start": "node_modules/.bin/webpack"
  },

μΆ”κ°€ν›„ npm start μ‹€ν–‰μ‹œν‚€λ©΄ webpack.config.js μ„€μ •ν•œ output μœ„μΉ˜μ— 파일이 생성 λœλ‹€.

개발 μ„œλ²„

κ°œλ°œμ„œλ²„λ₯Ό μƒμ„±ν•˜κΈ° μœ„ν•΄μ„œ 'npm install -save webpack-dev-server' μΆ”κ°€ μ„€μΉ˜ ν•΄μ•Όν•œλ‹€.

npm start μ‹€ν–‰ν•˜κΈ° μœ„ν•΄μ„œ 이와 같이 μˆ˜μ •μ„ν•œλ‹€.

--progress μ˜΅μ…˜μ€ λΉŒλ“œλ‹¨κ³„μ—μ„œ ν„°λ―Έλ„μ—μ„œ 진행쀄 ν‘œμ‹œν•΄μ€€λ‹€κ³  ν•œλ‹€.

  "scripts": {
    "start": "node_modules/.bin/webpack-dev-server --progress"
  },

webpack.config.js 에 이와같이 μ˜΅μ…˜μ„ μΆ”κ°€ν•œλ‹€.

  devServer : {
    contentBase : "./public",
    colors : true, //터미널 색상
    historyApiFallback : true,
    inline : true //νŽ˜μ΄μ§€κ°€ λ³€κ²½λ˜μ—¬ μƒˆλ‘œ κ³ μΉ¨
  }

npm start μ‹€ν–‰ν•˜λ©΄ bundle.js νŒŒμΌμ€ 생성은 μ•ˆλ˜κ³  localhost:8080 듀어가보면 κ°œλ°œμ„œλ²„κ°€ μƒμ„±λœκ²ƒμ„ 확인 ν•  수 μžˆλ‹€.