我正在实现一个通用组件,它接受HTML作为TypeScript中的任何as
元素。
<Component as='div' {...myProps} {...divProps} />
<Component as='button' {...myProps} {...buttonProps} />
我只是在尝试将组件的属性定义为任何HTML元素时迷失了方向。
请分享你的建议。
谢谢。
发布于 2021-01-03 13:54:41
使用像这样的东西:
interface IProps {
as: React.ElementType;
}
export const Component = (props: IProps) => {
const { as: Cmp = "div", ...rest } = props;
return <Cmp {...rest} />;
};
https://stackoverflow.com/questions/65549938
复制