【发布时间】:2021-07-13 05:05:15
【问题描述】:
我不确定我这样做是否正确,但我想制作一个 hoc,它会根据用户是否为管理员来显示组件。这是我的 HOC:
export const WithUser = (Component) => (props) => {
if (props.admin) {
return <Component {...props} />;
}
return null;
};
我使用时出错Functions are not valid as a React child.对我来说没有意义。
我想这样使用它:
<WithUser admin>
<button>Hi</button>
</WithUser>
但我得到了那个错误。也许我没有正确使用 HOC。我只想包装用户需要成为管理员才能查看的组件
【问题讨论】:
-
不确定这是否能回答你的问题,但使用钩子你可以这样做
{admin && (<button>Hi</button>)},你可以用你想要的任何组件替换按钮
标签: reactjs higher-order-components