我创建了高阶组件,该组件
我将通用类型用于包装道具组件,并且我的高阶组件也有自己的道具类型。所以我想通过&运算符将它们连接起来,但是我从连接功能中得到了错误。
WithSatsFormProps 是空界面
const withSatsForm =
<P, K>(options: WithSatsFormOptions<K>) =>
(SatsComponent: ComponentType<P>) => {
class WithSatsForm extends Component<WithSatsFormProps & P> { <-- because of this
constructor(props: WithSatsFormProps & P) {
super(props);
}
public render() {
return (
<div>
<SatsComponent {...this.props as P} />
</div>
)
}
}
return connect()(WithSatsForm); <-- here is error typing
}
export default withSatsForm;
错误消息:
类型'typeof WithSatsForm'的参数不能分配给类型'ComponentType,WithSatsFormProps&P >>'的参数。 类型'typeof WithSatsForm'不可分配给'ComponentClass,WithSatsFormProps&P>,any>'。 参数'props'和'props'的类型不兼容。