我想设计一个这样的 TS 类型,但是不知道该如何设计,就是一个数组类型,数组的每一项都是一个对象,对象有两个属性,第一个属性是 就像这样使用React 组件,第二个对象是需要传递给该组件的属性,希望可以保持有 TS 的类型检查应该如何设计,
使用时就像这样
之前这么设计过这个类型,数组中只传入一项没有问题,但是假如传入多项就会有类型不匹配
interface IProps<T> {
registryModal:Array<{
Component:React.ComponentType<T>,
props:T
}>
}
你在
IProps
上约束了所有的props
的类型都是T
,数组中所有的元素都得是这个类型才行。这种声明方式我只能想到用
any
解决:在你使用每一个组件时再用
as
声明props
的真正类型。