Я создал High Order Component, который ДОЛЖЕН быть подключен к избыточному хранилищу с помощью функции подключения.На самом деле все работает в простом Javascript, но я хотел бы использовать Typescript здесь.Существует одна ошибка, связанная с набором реквизита .
Я использую универсальный тип для обернутого компонента реквизита, а также мой компонент высокого порядка имеет свой собственный тип реквизита.Поэтому я хочу подключить их с помощью оператора & , но я получаю сообщение об ошибке от функции подключения ..
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>, любому>.Типы параметров «реквизит» и «реквизит» несовместимы.