0

我已经使用 引导了一个应用程序create-react-app,然后将其弹出,现在进一步配置它。但是我有一个问题,webpack 不尊重 ? 中声明的预设.babelrc

我有这个错误,因为“缺乏”stage-1预设。

语法错误:缺少类属性转换

同时,如果我用字符串表示法替换 loader,就像这样babel?presets[]=react,presets[]=es2015,presets[]=stage-1,它运行良好。

可以做些什么来修复它?

.babelrc:

{
  "presets": [
    "es2015",
    "react",
    "stage-1"
  ],
  "plugins": [
    "transform-flow-strip-types",
    "transform-react-remove-prop-types"
  ]
}

Webpack babel 加载器配置:

{
    test: /\.(js|jsx)$/,
    include: paths.appSrc,
    loader: 'babel',
}
4

2 回答 2

1

它会忽略你的 custom babelrc。你必须要么...

1)如您所述,在 webpack 配置中提供它们

2)通过运行弹出npm run eject并使用自定义babelrc

3)使用create-react-app这样的叉子

create-react-app有意抽象出配置 babel 的过程。毕竟,它的目标是消除为第一次做出反应或只是希望快速开始的人们设置项目的麻烦。配置 babel 是令人头疼的一个重要部分。因此,它不允许您配置 babel。

但是,它确实提供了正是出于这个原因而弹出的能力。有关此问题的更多讨论,请参阅此 github 问题。

于 2016-12-27T18:05:30.060 回答
0

transform-class-properties插件添加到.babelrc帮助中。所以装载机本身一切都很好。但是仍然没有答案为什么数组中stage-1的预设.babelrc被忽略,而使用字符串表示法它可以工作。希望,无论如何它可以帮助某人。

于 2016-12-28T19:03:12.273 回答