我使用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 loader配置:
{
test: /\.(js|jsx)$/,
include: paths.appSrc,
loader: 'babel',
}
答案 0 :(得分:1)
它会忽略您的自定义babelrc
。你要么......
1)如你所提到的那样在webpack配置中提供它们
2)通过运行npm run eject
并使用自定义babelrc
3)使用像this one
这样的create-react-app
分叉
create-react-app
故意抽象出配置babel的过程。毕竟,它的目标是消除为第一次做出反应或者希望快速入门的人们设置项目的头痛。配置babel是头痛的一个重要部分。因此,它不会让你配置babel。
答案 1 :(得分:0)
将transform-class-properties
插件添加到.babelrc
有帮助。所以装载机本身一切都很好。但仍然没有答案为什么stage-1
数组中的.babelrc
预设忽略,而使用字符串表示法则可以。希望,无论如何它会帮助别人。