Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';
- import { Injectable } from '@angular/core';
- import { NgxSpinnerService } from 'ngx-spinner';
- import { Observable } from 'rxjs/Observable';
- import { finalize } from 'rxjs/operators';
- @Injectable()
- export class SpinnerInterceptor implements HttpInterceptor {
- constructor(
- private spinner: NgxSpinnerService
- ) { }
- intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
- let finished = false;
- setTimeout(() => {
- if (!finished) {
- this.spinner.show();
- }
- }, 5000);
- return next.handle(req).pipe(finalize(() => {
- finished = true;
- this.spinner.hide();
- }));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement