微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

.babelrc 文件未应用 方案一:升级babel-loader到7.1.2+解决方案 2:将 babelrc: true 添加到您的 webpack 选项

如何解决.babelrc 文件未应用 方案一:升级babel-loader到7.1.2+解决方案 2:将 babelrc: true 添加到您的 webpack 选项

我只想将 ts 用作类型检查的形式,因此我使用 babel-loader 并仅添加 typescript-preset,如下所示。它在编写 .babelrc 文件时不应用,但只有当你像这样在 webpack.config.js 文件中的 babel-loader 中提供选项时才应用它。当我阅读官方文档时,我了解到 babel-loader 会自动识别并应用 .babelrc 文件。我错了吗?

myRepo

.babelrc

{
  "env": {
    "development": {
      "presets": ["@babel/preset-env"],"plugins": []
    },"production": {
      "presets": [
        [
          "@babel/preset-env",{
            "targets": { "ie": 11 }
          }
        ],"@babel/preset-typescript"
      ],"plugins": [["@babel/plugin-transform-runtime",{ "corejs": 3 }]]
    }
  }
}

解决方法

有很多事情可能会出错,如果不直接访问您的设置,就很难排除简单的事情(例如 .babelrc 位于错误的目录中)。

但是,如果您运行的是 babel-loader 7.1.1 或更早版本,那么您很可能遇到了 bug,其中 babel.transform 没有读取 .babelrc默认情况下正确文件。

有两种解决方案:

方案一:升级babel-loader到7.1.2+

该错误已在 7.1.2 和 7.1.4 以后修复。

解决方案 2:将 babelrc: true 添加到您的 webpack 选项

如果您由于某种原因无法升级,那么您只需要明确告诉 babel.transform 查找 babel 配置文件:

  //...
  {
    loader: 'babel-loader',options: {
      babelrc: true,}
  }
  // ...

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。