中是如何使用的呢,这里以create-react-app脚手架搭建的项目为例
01
为什么要使用装饰器模式?...在设计模式中讲到优先使用对象而不是类继承,动态的给对象添加一些额外的属性或方法,相比与使用继承,装饰器模式更加灵活
在 React 中,高阶组件是一个非常厉害的东西,它最大的特点就是能够:重用组件逻辑....达到精简代码能力
前提条件
在使用这种装饰器方式时,需要对create-react-app做一些配置,它默认是不支持装饰器模式的,需要对项目做一些配置
在项目根目录中终端下使用npm run eject...presets": ["react-native-stage-0/decorator-support"]
}
经过这么配置后,就可以使用装饰器了的
02
未使用装饰器之前
如下是componentA.js...,而不是在运行时,这意味着,装饰器能在编译阶段运行代码,它本身就是编译时执行的函数
⒉ 装饰器只能用于类和类的方法,不能用于函数,因为它存在函数提升
结语
高阶组件是函数,参数是组件并返回一个组件的函数