Аналог крючка для класса ApolloError - PullRequest
1 голос
/ 23 марта 2020

Я выполняю рефакторинг старого компонента, написанного на клиенте React & Apollo, и у меня есть следующий кусок кода:

export const getBusiness = (query: DocumentNode) => compose([
    graphql<BusinessSchema, BusinessPartnerSchema, Identity, GQLResult<LegalEntity> | undefined>(query, {
        options: props => ({
            variables: { id }
        }),
        props: ({ data }) => data && Object.assign(
            { loading: data.loading, error: data.error || validateLegalEntity(data.businessPartner) },
            data.businessPartner && {
                prop: data.prop
            }
        ),
        skip: props => !props.id
    })
]

)

const validateBusiness = (data?: BusinessUnit): ApolloError | undefined =>
     data && data.businessPartners.length === 0 &&
     new ApolloError({
     graphQLErrors: [{ message: 'User has no assigned outlets', extensions: { business: 'validation' } } as unknown as GraphQLError]
     }) || undefined

Я искал в документах ApolloClient и не может найти аналог для этого класса или пример использования с перехватчиками.

...