博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在 create-react-app 中启用装饰器语法
阅读量:7070 次
发布时间:2019-06-28

本文共 1337 字,大约阅读时间需要 4 分钟。

本文简单介绍了一下如何在 create-react-app 中启用装饰器语法的两种方式。

方式一:暴露 create-react-app 的配置

暴露出 create-react-app 的所有配置

运行命令:

$ npm run eject复制代码

项目中就会展示出各种配置文件。

babel 中添加 plugins 配置

package.json 文件中找到 babel 的配置,添加如下代码即可:

package.json

"babel": {    "presets": [      "react-app"    ],+    "plugins": [+        [+            "@babel/plugin-proposal-decorators",+            { "legacy": true }+        ]+    ]}复制代码

重新运行项目,即可正常使用装饰器语法。

create-react-app 脚手架中已经安装了 @babel/plugin-proposal-decorators 插件,如果是自己配置的脚手架,请先安装插件:npm install @babel/plugin-proposal-decorators --save-dev


方式二:直接在项目的 node-modules 中添加配置

打开项目的 node_modules 文件夹,找到 babel-preset-react-app 目录。打开目录下 create.js 文件。找到 plugins 属性配置的地方,修改如下配置即可:

-isTypeScriptEnabled && [-    require('@babel/plugin-proposal-decorators').default,-    false,-],+[+    require('@babel/plugin-proposal-decorators').default,+    { legacy: true },+],复制代码

不建议使用方式二,因为一旦需要重新安装 node_modules, 就需要再去 babel-preset-react-app 里面添加一次配置。


总结

上面两种方式使用了之后,均可在项目中正常使用装饰器语法,但是使用装饰器时。可能还是会出现红线报错提示,此时在 VSCode 的配置文件中(Visual Studio Code左下角的设置按钮(或者文件>首选项>设置))添加如下配置即可:

setting.json

"javascript.implicitProjectConfig.experimentalDecorators": true,复制代码

建议使用第一种方式,虽然可能比较麻烦,需要暴露出所有的配置。 但是第二种方式,如果只是自己进行一些小的 Demo 测试还好。不然的话,一旦需要重新安装 node_modules,就需要再重新去 babel-preset-react-app 里面添加一次配置。


参考链接

转载于:https://juejin.im/post/5c9210dae51d456ba9407daa

你可能感兴趣的文章
安全狗:云时代的服务器安全守护者
查看>>
从初创型到独角兽企业,监控架构演进的那些事儿
查看>>
BAT集体升级云事业部,这背后都藏着哪些“小心思”?
查看>>
Oracle 裁员史:技术人死于重组,卒于云计算
查看>>
GNU parallel 笔记
查看>>
性能之巅:Linux网络性能分析工具
查看>>
InfoQ就Spring Boot 2.0 GA版发布采访了项目牵头人Phil Webb
查看>>
Oracle回应用户锁定,自治数据库是更好选择
查看>>
2018年OpenStack用户调查报告出炉:Kubernetes仍居首
查看>>
SpringOne大会上发布了一个实验性的反应式关系型数据库连接驱动R2DBC
查看>>
微软在C# 8中引入预览版可空引用类型
查看>>
度量和提高代码质量
查看>>
中国互联网公司开源项目调研报告
查看>>
Dubbo Mesh在闲鱼生产环境的落地实践
查看>>
Firmament - 大规模集群任务调度
查看>>
Windows 10 超过Windows 7成为最受欢迎的操作系统
查看>>
Homebrew 1.9发布,将支持Linux与Windows 10
查看>>
Spring Web Services 3.0.4.RELEASE和2.4.3.RELEASE发布
查看>>
Kotlin 1.3带来稳定的协程、合约及其他
查看>>
微软公布Visual Studio 2015产品线,可直接生成Linux二进制程序
查看>>