diff --git a/packages/apollo-client/src/core/ObservableQuery.ts b/packages/apollo-client/src/core/ObservableQuery.ts index 6d57e1efa7d..5cca36845ef 100644 --- a/packages/apollo-client/src/core/ObservableQuery.ts +++ b/packages/apollo-client/src/core/ObservableQuery.ts @@ -616,6 +616,14 @@ export class ObservableQuery< } const onError = (error: ApolloError) => { + // Since we don't get the current result on errors, only the error, we + // must mirror the updates that occur in QueryStore.markQueryError here + this.updateLastResult({ + ...this.lastResult, + errors: error.graphQLErrors, + networkStatus: NetworkStatus.error, + loading: false, + }); iterateObserversSafely(this.observers, 'error', this.lastError = error); };