diff --git a/src/app/cache.service.ts b/src/app/cache.service.ts index b62d45f..1419e02 100644 --- a/src/app/cache.service.ts +++ b/src/app/cache.service.ts @@ -39,7 +39,12 @@ export class CacheService { } else if (fallback && fallback instanceof Observable) { this.inFlightObservables.set(key, new Subject()); console.log(`%c Calling api for ${key}`, 'color: purple'); - return fallback.do((value) => { this.set(key, value, maxAge); }); + return fallback + .do((value) => { this.set(key, value, maxAge); }) + .catch((err) => { + this.notifyInFlightObservers(key, null); + return Observable.throw(err); + }); } else { return Observable.throw('Requested key is not available in Cache'); }