<html>
<script src="module1.js" /> // var name = '도밥'
<script src="module2.js" /> // var name = '우코'
<script src="module3.js" />
</html>
// module3.js
function hello(){
console.log('hi' + name) // hi 우코
}
const path = require('path'); // node.js API
module.exports = {
entry: './src/index.js' // 번들링할 모듈의 시작점을 지정
output: { // 번들 파일 저장 경로
filename: 'index.js',
path: path.resolve(__dirname, './dist')
},
module: {
rules: [
{
test: /\.css$/,
// 로더는 역순으로 실행된다.
use: ['style-lodaer', 'css-lodaer']
}
]
},
plugins: [new HtmlWebpackPlugin()] // 번들 파일 관련 후처리
// html 파일을 생성해서 번들링된 파일을 자동으로 주입
}
// index.js
import text from './text.js';
import './index.css';
document.body.innerHTML = `<h1>${text}</h1>`;
이번 글에서는 번들러에 대한 내용을 다뤘는데요. 프론트엔드를 처음 공부할 때 webpack을 통해서 vue 프로젝트를 처음부터 구성해본 적이 있는데요. 그때 생각이 많이 났습니다. 사실 내용이 생각보다 가벼워서 제가 기대했던 내용과는 살짝 달랐지만 모듈러의 탄생 과정은 흥미로웠습니다. 빠른 시일내에 번들러를 추가적으로 공부해야겠네요. 아직 부족한 점이 참 많은 거 같습니다.