ApolloClient Typescript Проблема компонента высшего порядка (нельзя назначить типу) - PullRequest
1 голос
/ 14 января 2020

Я пытаюсь создать HO C в приложении React Native, но у меня возникают проблемы с получением определений.

interface IWithApolloClientComponentProps {
    apolloClient: ApolloClient<any>;
}
export function withApolloClient<
    P extends IWithApolloClientComponentProps, 
    R = Omit<P, keyof IWithApolloClientComponentProps>
>(
    Component: React.ComponentType<P>
): React.ComponentType<R> {
        return function BoundComponent(props: R) {
            return <ApolloConsumer>{client => <Component {...props} apolloClient={client} />} . 
        </ApolloConsumer>;
    };
}

Мой VSCode продолжает выдавать следующую ошибку:

Type 'R & { apolloClient: ApolloClient<object>; }' is not assignable to type 'IntrinsicAttributes & P & { children?: ReactNode; }'.
  Type 'R & { apolloClient: ApolloClient<object>; }' is not assignable to type 'P'.
'R & { apolloClient: ApolloClient<object>; }' is assignable to the constraint of type 'P', but 'P' could be instantiated with a different subtype of constraint 'IWithApolloClientComponentProps'.ts(2322)

Кто-нибудь видит что-то, что я здесь делаю ужасно неправильно?

...