Es6+용 Webpack 및 Babel 설정 방법
시작하기 전에 프로젝트용 폴더를 만들고 다음을 실행하십시오.
npm init
package.json 파일을 구성하려면
Webpack은 최신 JavaScript 애플리케이션을 위한 정적 모듈 번들러입니다. 기본적으로 모든 JavaScript 파일을 하나의 파일로 묶어서 서로에 대해 알 수 있도록 합니다. webpack을 설치하려면 다음을 실행하십시오.
npm install webpack --save-dev
이것은 npm에게 webpack의 최신 버전을 개발 종속성으로 설치하도록 지시합니다. webpack이 설치된 상태에서 webpack.config.js 파일을 만들고 다음 내용으로 채웁니다.
const path = require('path');
module.exports = {
entry: './src/js/index.js', //location of your main js file
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'js/bundle.js' // where js files would be bundled to
}
}
그런 다음 명령줄을 통해 webpack과 통신할 수 있는 방법이 필요하고 이를 위해 webpack 명령줄을 사용하며 npm으로 설치해야 한다고 추측했습니다. 이제 실행합니다.
npm install webpack-cli --save-dev
또한 포트에서 웹 앱을 제공하기 위해 webpack-dev-Server를 설치해야 합니다. 마지막으로 html-webpack-plugin을 설치할 수 있습니다.
npm install webpack-dev-server html-webpack-plugin --save-dev
이제 webpack.config.js 파일을 다음과 같이 업데이트합니다.
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: './src/js/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'js/bundle.js'
},
devServer: {
contentBase: './dist' //where contents are served from
},
plugins: [
new HtmlWebpackPlugin({
filename: 'index.html', // name of html file to be created
template: './src/index.html' // source from which html file would be created
})
]
}
마지막으로 package.json의 스크립트를 다음으로 변경하십시오.
"scripts": {
"dev": "webpack --mode development",
"build": "webpack --mode production",
"start": "webpack-dev-server --mode development --open"
}
위의 dev 스크립트를 실행하면 js 파일이 번들되고 빌드 스크립트가 실행되면 js 파일이 번들로 축소되며 시작 스크립트를 실행하면 포트에서 앱이 제공됩니다.
npm run dev //running dev script
npm run build //running build script
npm run start //running Start script
Babel은 현재 및 이전 브라우저 또는 환경에서 ECMAScript 2015+ 코드를 이전 버전과 호환되는 JavaScript 버전으로 변환하는 데 주로 사용되는 도구 체인입니다.
babel 실행에 필요한 모든 요구 사항을 얻으려면 다음을 수행하십시오.
npm install @babel/core @babel/preset-env babel-loader --save-dev
또한 실행
npm install @babel/runtime core-js@3 --save
이제 babel을 실행하기 위한 모든 요구 사항이 있습니다. .babelrc 파일을 만들고 다음과 같이 내용을 업데이트합니다.
{
"presets": [
["@babel/preset-env", {
"useBuiltIns": "usage",
"corejs": "3",
"targets": {
"browsers": [
"last 5 versions",
"ie >= 8"
]
}
}]
]
}
그런 다음 webpack.config.js 파일을 다음과 같이 업데이트합니다.
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: './src/js/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'js/bundle.js'
},
devServer: {
contentBase: './dist'
},
plugins: [
new HtmlWebpackPlugin({
filename: 'index.html',
template: './src/index.html'
})
],
module: {
rules: [
{
test: /\.js$/, //using regex to tell babel exactly what files to transcompile
exclude: /node_modules/, // files to be ignored
use: {
loader: 'babel-loader' // specify the loader
}
}
]
}
}
모든 작업이 완료되면 dev 또는 build 스크립트를 실행한 다음 시작 스크립트를 실행합니다. 이제 webpack과 babel이 성공적으로 설정되었습니다. 모듈식 프로그래밍을 사용하고 앱에서 Es6+ 구문을 사용하는 것도 재미있습니다.
Reference
이 문제에 관하여(Es6+용 Webpack 및 Babel 설정 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/alecgodwin/how-to-setup-webpack-and-babel-for-es6-dpk텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)