# 處理 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` 。