如何放弃对 IE 的支持,并防止 babel 转译为 ES5,以获得性能提升

Raj*_*hvi 5 reactjs create-react-app babel-loader webpack-4 react-app-rewired

目前我正在使用 Create React App 的默认 webpack 配置进行 babel 转译。看来默认的 babel-loader (在 CRA 配置中)使用“babel-preset-react-app”。现在我想要的只是阻止 JS 文件转译为 ES5,因为我不需要支持 Internet Explorer。我希望这会给构建时间带来一些好处。

正在使用的版本:

  • 网页包 4
  • 通天装载机 8
  • 反应应用程序重新连线 2.1
  • 定制-cra 0.9

slu*_*ist 1

您可以browserslist在您的配置中package.json设置目标浏览器。

{
 ...
 "browserslist": {
     ">0.2%",
      "not dead",
      "not IE 11"
   }
}
Run Code Online (Sandbox Code Playgroud)

您还可以根据您的环境生成构建

"browserslist": {
   "production": [
      ">0.2%",
      "not dead",
      "not IE 11"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

CRA官方文档中也提到了这一点。

我建议查看browserslist以根据您的具体要求自定义规则。