react进阶-高阶组件

高阶组件

其实高阶组件的出现,应该感谢javascript支持函数式编程。当我们一层一层的去揭开高阶组件的面纱的时候,发现它并没有很神奇啦。说到底就是一个函数,返回一个组件,组建中套了目的组件。看代码:

1.用法:

用法

2.写法:

代码太长,分两段吧,显然,这是用的ts:

react进阶-高阶组件_第1张图片
第一部分
react进阶-高阶组件_第2张图片
第二部分

这里不难发现,用了个库:hoist-non-react-statics。

这个库可以帮助我们拷贝静态属性。因为静态属性是属于类的,不是属于对象的,高阶组件在渲染后可以拿到目的组件的对象,但不渲染,高阶组件是一个类,静态属性不会自动过去,所以需要拷贝一下。

你可能感兴趣的:(react进阶-高阶组件)