【问题标题】:Ember-cli is ignoring options .babelrcEmber-cli 忽略选项 .babelrc
【发布时间】:2019-11-28 01:46:52
【问题描述】:

我想在我的 Ember 应用程序中配置 babel 选项以忽略 data-stubs 文件夹,或将 compact 设置为 false,以便在构建期间消除以下错误:

[Babel: my-app > applyPatches][BABEL] 
 Note: The code generator has deoptimised the styling of dev/my-app/tests/data-stubs/foo.js
 as it exceeds the max of 500KB.

StackOverflow 上接受的答案说要使用 {"compact": false} 配置 .babelrc 文件,但这不适用于 ember-cli 构建。参考答案: BABEL Note: The code generator has deoptimised the styling of "app.js" as it exceeds the max of "100KB in Meteor

我在我的 ember 应用的根文件夹中创建了一个 .babelrc 文件,并尝试了许多不同的配置:

{
  "ignore": ["**/data-stubs/*.js", "tests/data-stubs/*", "*tests/data-stubs/*"], //do not translate our stub files
  "compact": false,
  "env": {
    "development": {
      "compact": false
    }
  }
}

None 没有任何影响,并且总是导致 The code generator has deoptimised the styling 错误消息。我还将.babelrc 文件放入data-stubs 文件夹中,设置与上述相同,但这也不起作用。

【问题讨论】:

    标签: ember.js babeljs ember-cli


    【解决方案1】:

    这是意料之中的。 Ember 使用ember-cli-babel,在文档中声明:

    如果您需要自定义 babel-preset-env 配置转换代码的插件的方式,您可以通过传入任何 babel/babel-preset-env 选项来实现。 注意:默认情况下会忽略 .babelrc 文件。

    虽然您可以在 ember-cli-build.js 中配置 babel 和 ember-cli-babel,但我认为 compact 将无法工作,因为 this open issue

    可以指定exclude

    【讨论】:

    • 实际上我尝试了排除,它似乎适用于 javascript/函数的类型,而不是特定文件。例如。 // don't transpile generator functions exclude: [ 'transform-regenerator', ], 但很高兴指出肯定有帮助的 Note: .babelrc files are ignored by default.
    • 是的,情况实际上更复杂,因为每个插件都可以带来另一个版本的 babel 应该用于插件。
    【解决方案2】:

    到目前为止,只有发往 @babel/preset-envtop level options 可以与 ember-cli-babel 一起使用。不幸的是,compact 不是其中之一。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-03
      • 1970-01-01
      • 2023-01-10
      • 2020-06-26
      • 1970-01-01
      • 2015-01-03
      • 1970-01-01
      • 2021-04-08
      相关资源
      最近更新 更多