利用bable简化高阶组件的使用

react组件包装成高阶组件方法太过于繁琐,利用balbe简化高阶函数的使用。

  1. 安装 npm install --save-dev @babel/plugin-proposal-decorators

  2. 在配置文件中config-overrides.js,中暴露函数配置对象中添加addDecoratorsLegacy()

装饰器语法

@demo 开头后面跟被装饰的组件,注意demo必须为高阶组件。从而包装对应的组件,其他参阅文档

  1. @demo
  2. class myClass {} class myClass {}
  3. function demo(target){ function demo(target){
  4. return target.a=1 return target.a=1
  5. } }
  6. myClass = demo(myclass)

装饰器语法跟例二相似,最后只需暴露重写的组件即可,不能直接在装饰器下暴露, 另起一行暴露