我一直在尝试使用official docs和@babel/preset-env
文件使用core-js
和.browserslist
来设置最佳的构建配置。
据我了解的文档,他们说preset-env
和useBuiltins:"usage"
会更新代码中的import 'core-js/stable'
语句,只包含必需的功能。
但是,无论我设置last 1 chrome version
还是>1% in NL
(浏览器数量更多,而且版本更旧),构建文件的大小都是相同的(大约3MB)。
我想念什么?
我在此处有一个测试仓库:https://github.com/publicJorn/jorns-react-starter
相关文件供快速参考,
.babelrc
{
"presets": [
[
"@babel/preset-env",
{
"useBuiltIns": "usage",
"corejs": { "version": 3, "proposals": true }
}
],
"@babel/preset-react"
],
"plugins": [
[
"@babel/plugin-proposal-object-rest-spread",
{
"useBuiltIns": true
}
],
["@babel/plugin-proposal-class-properties"],
["@babel/plugin-syntax-dynamic-import"],
["babel-plugin-styled-components"]
]
}
Webpack部件
module: {
rules: [
{
test: /\.(js|jsx)$/,
exclude: /node_modules/,
use: ['babel-loader']
}
]
},
.browserslistrc
> 1% in NL
ie 11
not ie < 11
index.js
import 'core-js/stable'
// etc..