Как выйти из системы с помощью apollo-link-error в приложенииact-native? - PullRequest
0 голосов
/ 08 сентября 2018

Для навигации по моему приложению реакции-нативу я использую «реагирование-навигацию».

С помощью приведенного ниже кода я могу успешно перехватывать все необходимые ошибки, поступающие с сервера.

const linkError = onError(({ graphQLErrors, networkError }) => {
  if (graphQLErrors) {
    // Logout user
    // 1. Issue logout mutation
    // 2. Navigate to Login screen
    graphQLErrors.map(({ message, locations, path }) =>
      console.log(
        `[GraphQL error]: Message: ${message}, Location: ${locations}, Path: ${path}`
      )
    );
  }
  if (networkError) console.log(`[Network error]: ${networkError}`);
});

const client = new ApolloClient({
  link: ApolloLink.from([linkError, stateLink, authLink, httpLink]),
  cache,
});

Вопрос в том, как перевести пользователя на экран «Вход в систему» ​​и вызвать мутацию «Выход из системы» в случае ошибки?

...