如何放弃对 IE 的支持,并防止 babel 转译为 ES5 以获得性能提升
How to drop support for IE, and prevent babel transpilation to ES5 in order to gain performance gain
目前我正在使用 Create React App 的默认 webpack 配置进行 babel 转译。
似乎默认的 babel-loader(在 CRA 配置中)使用“babel-preset-react-app”。现在我只想阻止将 JS 文件转换为 ES5,因为我不需要支持 Internet Explorer。
我希望这会在构建时间上带来一些收益。
正在使用的版本:
- Webpack 4
- Babel 加载器 8
- react-app-rewired 2.1
- 定制-cra 0.9
您可以在 package.json
中设置 browserslist
配置来设置目标浏览器。
{
...
"browserslist": {
">0.2%",
"not dead",
"not IE 11"
}
}
您也可以根据您的环境生成构建
"browserslist": {
"production": [
">0.2%",
"not dead",
"not IE 11"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
这个官方也有提到CRA doc。
我建议您查看 browserslist 以根据您的具体要求自定义规则。
目前我正在使用 Create React App 的默认 webpack 配置进行 babel 转译。 似乎默认的 babel-loader(在 CRA 配置中)使用“babel-preset-react-app”。现在我只想阻止将 JS 文件转换为 ES5,因为我不需要支持 Internet Explorer。 我希望这会在构建时间上带来一些收益。
正在使用的版本:
- Webpack 4
- Babel 加载器 8
- react-app-rewired 2.1
- 定制-cra 0.9
您可以在 package.json
中设置 browserslist
配置来设置目标浏览器。
{
...
"browserslist": {
">0.2%",
"not dead",
"not IE 11"
}
}
您也可以根据您的环境生成构建
"browserslist": {
"production": [
">0.2%",
"not dead",
"not IE 11"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
这个官方也有提到CRA doc。
我建议您查看 browserslist 以根据您的具体要求自定义规则。