【发布时间】:2022-01-04 18:10:39
【问题描述】:
假设你有一个像这样的组件树:
function Parent(props: { componentProp: ReactElement }) {
return (
<>
{props.componentProp}
</>
);
}
function ChildA(props: { message: string }) { return (<h1>{props.message}</h1>) }
function ChildB(props: { message: string }) { return (<h2>{props.message}</h2>) }
function App() {
return (
<Parent componentProp={<ChildA message="hi"/>}
);
}
正如所写,您可以在componentProp 中将ChildA 替换为ChildB,Typescript 不会抱怨。
是否可以限制componentProp 的类型,使您只能传递ChildA,而传递ChildB 会引发类型错误?
【问题讨论】:
-
乍一看,这看起来不像是同一个问题,但再看一遍是的,它确实表明您不能严格键入呈现的元素。
标签: reactjs typescript react-functional-component