webpack을 사용할 때 불편한 점이 코드가 수정이 될 때마다 번들링을 다시 해주어야 한다는 것이다.
webpack에는 이런 불편함을 해결해 줄 옵션들이 있는데 그 중 webpack-dev-server가 가장 많이 사용된다.
webpack-dev-server는 간단한 웹 서버와 실시간 다시 로딩 기능을 제공한다.
npm install webpack-dev-server
module.exports = {
...,
devServer: {
static: {
directory: path.join(__dirname, "dist"),
},
compress: true,
port: 3000,
hot: true,
historyApiFallback: true,
open: true
},
};
static
: 정적 파일의 위치를 지정한다.static : ['assets']
static : ['assets', 'css']
static.directory
: 서버에 제공할 정적 파일의 위치를 알려준다.port : auto
Hot Module Replacement(HMR)는 브라우저를 새로고침 하지 않아도 webpack으로 빌드한 결과물이 웹 애플리케이션에 실시간으로 반영될 수 있게 도와주는 설정이다.
open: ['/my-page']
open: ['/my-page', '/another-page']
npx webpack serve