# 处理 ES6+ 输出
在不做任何处理的情况下,ES6+ 的 JS 语法会原样输出,需要配置 babel-loader 处理相关资源。
安装
```
yarn add babel-loader babel-polyfill babel-preset-env -D
```
在 `conf/webpack.config.js` 中配置:
```js
const originalConfig = {
entry: {
app: ['babel-polyfill', './src/main.js']
},
module: {
rules: [
{
test: /\.js$/,
loader: 'babel-loader',
include: [resolve('src'), resolve('test')],
exclude: /node_modules/
}
]
}
}
```
在 `.babelrc` 中配置
```json
{
"presets": [
["env", {
"modules": false,
"targets": {
"browsers": ["> 1%", "last 2 versions", "not ie <= 8"],
"node": "current"
}
}],
"stage-2"
],
"plugins": [
"transform-runtime",
["component",
[
{ "libraryName": "mint-ui", "style": true }
]
]
],
"env": {
"test": {
"presets": ["env", "stage-2"],
"plugins": ["istanbul"]
}
}
}
```
注意,babel 本身只转换 ES6+ 的语法,而对于一些原型扩展需要使用叠片工具 `babel-polyfill` 。