react hook下的hoc组件

Posted Alex_Max

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react hook下的hoc组件相关的知识,希望对你有一定的参考价值。

假设我们有组件login和组件user,login组件内部有用户名密码输入,然后发送ajax请求给后端,后端返回成功,同时把用户list信息也返回了,然后直接把list当参数传给user组件。同时也显示user组件。
大概的调用方式就是

<Login>
   <User />
</Login>
interface ILoginProps {
    children: React.ReactElement;
}
const Login: FC<ILoginProps> = (props) => {
    const getChildNode = () => {
        if (props?.children) {
            const cloned: React.ReactElement = 
            React.cloneElement(props?.children, {
                initImInfo,
                initConfInfo,
                initUserInfo,
                isHost
            });
            return cloned;
        }
        return <div />;
    };
    return {isLoginSuccess ?getChildNode(): <LoginFrom>}
})

React.cloneElement的使用,它的第二个参数就是传给child的props.

以上是关于react hook下的hoc组件的主要内容,如果未能解决你的问题,请参考以下文章

是否可以通过使用 HOC(高阶组件)在类组件中使用 React Hooks?

理解 React Hooks

在 HoC 中使用反应钩子时的警告

带有 React Hooks 的 HoC

从Mixin到hooks,谈谈对React16.7.0-alpha中即将引入的hooks的理解

React - 何时使用钩子,何时使用 HOC