Support for the experimental syntax ‘decorators-legacy’ isn’t currently enabled
有道云翻译过来意思为:目前还不支持实验性语法“decorator -legacy”
其实大概意思就是装饰器语法不支持呗!
报错如下图:
遇到问题,肯定第一时间百度,看大家有没有遇到类似情况,如何解决的,
参考答案几乎都是:
npm install @babel/plugin-proposal-decorators
安装后再package.json里面加一句话(babel里面plugins那句):
"babel": {
"plugins": [
[
"@babel/plugin-proposal-decorators",
{
"legacy": true
}
]
],
"presets": [
"react-app"
]
},
我是也是直接把上面的复制到package.json 文件中,如下图:
最终结局方案如下:
先把当前更改过的代码提到git上(git add . ---- git commit -m “暂存一下”)
然后再 npm run eject
还是在package.json里面加一句话(babel里面plugins那句):
"babel": {
"plugins": [
[
"@babel/plugin-proposal-decorators",
{
"legacy": true
}
]
],
"presets": [
"react-app"
]
},
这样肯定就没有问题了!
到底执行npm run eject,会发生什么呢???
他会将原本creat react app对webpack,babel等相关配置的封装弹射出来,如果我们要将creat react app配置文件进行修改,现有目录下是没有地方修改的,此时,我们就可以通过eject命令将原本被封装到脚手架当中的命令弹射出来,然后就可以在项目的目录下看到很多配置文件。