一、babel-loader 和 @babel/core 处理ES6转ES5(基础语法转换)
babel-loader 和 @babel/core将浏览器不能识别的新语法转换成原来识别的旧语法,做浏览器兼容性处理(如:箭头函数;const等)
babel-loader: 集成了babel-cli
babel/core: babel核心库
- 安装Loader
// webpack 4版本下:
npm i babel-loader @babel/core @babel/preset-env -D
- 配置Loader
module: {
rules: [
{
test: /\.js$/, 匹配文件
exclude: /node_modules/, // 排除文件
use: {
loader: "bable-loader",
// 配置项
options: {
presets: ['@babel/preset-env'] // 解析环境
}
}
}
]
}
- 运行
npm run build // yarn build
此时在打包文件build中输出
二、babel/polyfill处理ES6高级语法转换(如:Promise)
- 安装
npm i @babel/polyfill
- 在app.js中导入使用
import '@babel/polyfill'
- 运行
npm run build // yarn build
此时在打包文件build中输出