create-react-app默认不支持装饰器的,需要做以下配置。

  打开 package.json ,可以看到eject。运行 npm run eject 可以让由create-react-app创建的项目的配置项暴露出来。

{
...
"scripts": {
...
"eject": "react-scripts eject"
},
...
}

运行 npm run eject 

  此时,项目中多了一个config文件,并且各个配置文件已经暴露出来了。(运行npm run eject之前,保证本地没有待提交到git的文件)

安装babel插件
  Babel >= 7.x

npm install --save-dev @babel/plugin-proposal-decorators

  Babel@6.x

npm install --save-dev babel-plugin-transform-decorators-legacy

修改package.json文件的babel配置项
  Babel >= 7.x

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

  Babel@6.x

"babel": {
"plugins": [
"transform-decorators-legacy"
],
"presets": [
"react-app"
]
}

至此,就可以在项目中使用装饰器了

@MyContainer
class B extends Component{
render(){
return (
<p>B组件</p>
)
}
}
export default B;

  

最新文章

  1. C# 基础知识总结
  2. tmux 操作
  3. qt (5.60/5.70) 编译 QOCI 驱动
  4. [工作中的设计模式]备忘录模式memento
  5. QGrphicsView, QGraphicsScene 和 QGraphicsItem 的区别
  6. iOS - OC NSArray 数组
  7. ActionContext详解
  8. Windows 进程通信 之 DDE技术
  9. BZOJ 1610 连线游戏
  10. wxPython 对话框关闭后进程无法退出的原因
  11. the assignment of reading paper
  12. javascript中获取dom元素的高度和宽度
  13. Spring生命周期 Constructor &gt; @PostConstruct &gt; InitializingBean &gt; init-method
  14. 前端ajax技术之跨域问题解决
  15. 多线程编程CompletableFuture与parallelStream
  16. Spark思维导图之性能优化
  17. Vue基础进阶 之 常用的实例属性
  18. springmvc mybatis shiro构建cms系统
  19. 如何在一台机器上部署多个tomcat
  20. SpringMVC_HelloWorld_01

热门文章

  1. 克拉克拉(KilaKila):大规模实时计算平台架构实战
  2. 如何定制Linux外围文件系统?
  3. Linux文件权限与属性详解 之 SUID、SGID &amp; SBIT
  4. 开源IM项目-InChat登录接口设计与实现(基于Netty)
  5. 委托(3).net 2.0中的委托
  6. MySQL查询执行的基础——查询优化处理
  7. PHP基础:MYSQL数据库操作
  8. 点击checkbox后,$(this).attr(&#39;checked&#39;)得到的值不会发生改变
  9. csharp: LocalDataCache.sync
  10. 腾讯云服务器配置node环境