我有一个组件的以下Flow Props
类型:
type Props = {
// <...>
update: ({ dates?: DateRange }) => void
};
我还有以下导出类型:
export type SearchContextType = {
// <...>
update: ({ dates?: DateRange, location?: Location }) => void
};
当我尝试使用第二种类型将 prop 传递给第一个组件时,我得到了以下错误:
错误:(99,23)无法创建MyComponent
元素,因为对象类型1中缺少属性location
,但对象类型[2]中存在属性update
的第一个参数。
我知道你搞错了,但我的问题是:我怎样才能正确地绕过它呢?
示例
1条答案
按热度按时间tkclm6bt1#
首先,我们将简化示例:
换句话说,我们只是使用类型转换将
Foo
转换为Bar
:或者我们可以说,我们将
SuperType
转换为SubType
要将
SuperType
转换为SubType
,我们可以使用$Shape
:复制所提供类型的形状,但将每个字段标记为可选。
顶级域名:
纠正示例