angular2/4 有没有loading-bar的插件?或者怎么监听页面一有http请求就能出现动画

发布于 2022-09-05 10:53:22 字数 128 浏览 9 评论 0

自己写了一个loading-bar插件,不过都是手动调用和关闭,每个http请求都得手动添加自定义插件,想问问有没有人用过好用的loading-bar,只要调用一次,就能全局监听http请求,当用户网络不太好的时候就会有加载的动画出现?谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

笛声青案梦长安 2022-09-12 10:53:22

查了一些资料后在http加入了监听,放在 https://github.com/ChenJunhan...上了

残龙傲雪 2022-09-12 10:53:22

这种问题你应该去github搜。肯定能搜出来。帮你搜了个。https://github.com/akserg/ng2...

゛清羽墨安 2022-09-12 10:53:22

随便去npm上搜索,你可以把loading-bar封装到Http请求中。

┾廆蒐ゝ 2022-09-12 10:53:22

题主,您好,
本人也是采用 @mafeifan 同学 提到的那个插件。以下是我自己的实践,希望能有所帮助。
app.component.ts如下:

import { Component, OnDestroy } from '@angular/core';
import { SlimLoadingBarService } from "ng2-slim-loading-bar";
import { NavigationCancel, NavigationEnd, NavigationError, NavigationStart, Router } from "@angular/router";

@Component({
  // tslint:disable-next-line
  selector   : 'body',
  templateUrl: './app.component.html'
})
export class AppComponent implements OnDestroy {
  private sub: any;

  constructor(private slimLoader: SlimLoadingBarService, private router: Router) {
    // Listen the navigation events to start or complete the slim bar loading
    this.sub = this.router.events.subscribe(event => {
      if (event instanceof NavigationStart) {
        this.slimLoader.start();
      } else if (event instanceof NavigationEnd ||
        event instanceof NavigationCancel ||
        event instanceof NavigationError) {
        this.slimLoader.complete();
      }
    }, (error: any) => {
      this.slimLoader.complete();
    });
  }

  ngOnDestroy(): any {
    this.sub.unsubscribe();
  }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文