2017-12-13 5 views
0

データが完成するのを待っているときにローディングスピナーを作成する必要があります。Loadingスピナーの作成角度2

私のサービス:

... 
    constructor(private _http:Http) { 

    } 
    getDataFromApi() { 
    return this._http.get('https://api.punkapi.com/v2/beers') 
     .map(res => res.json()); 
    } 

私のコンポーネント:

... 
export class MainListComponent implements OnInit { 
    getData:Array<Beer>; 
    constructor(private _apiDataService:ApiDataService) {} 

    onTestGet() { 
    this._apiDataService.getDataFromApi().subscribe( 
     res => { 
     this.getData = res; 
     } 
    ); 
    } 

    ngOnInit() { 
     this.onTestGet(); 
    } 
} 

私はNPMにスピナーを見つけましたが、私はそれを使用する方法がわかりません。私は何かが読み込まれている間、Webページを無効にする必要があります。

+0

をこのリンクを参照してくださいhttps://www.npmjs.com/package/ng-block-ui – hrdkisback

答えて

1

前にshowメソッドでローディングしているサービスセットを呼び出すと、レスポンスを取得した後、そのメソッドを隠しメソッドに設定します。

同様に、ここで確認できます。 https://www.npmjs.com/package/ng4-loading-spinner

+0

私はng4-loading-spinnerを使い、私の '.subscribe()'の中に 'spinner.hide()'を使っていて、私のスピナーはhideですロード前に – Pawel

+0

OK、それは動作しますが、問題が見つかりました。問題は、Webサイトのすべてのhtmlタグをレンダリングした後にスピナーを非表示にしたいということです。 – Pawel

+0

私を助けることができますか? – Pawel

0

あなたはフォントを恐ろしい使用することができます - アニメーションアイコン:http://fontawesome.io/examples/ やサービスを呼び出す前に、それを表示し、テンプレートで応答

_isLoading: boolean; 
.... 
    this._isLoading = true; 

    this.myService.get("/api/...") 
      .subscribe(res => { 
        ..... 
         this._isLoading = false; 
      } 
     ); 

を得た後に隠す:

<i *ngIf="_isLoading" 
    class="fa fa-circle-o-notch fa-spin fa-3x fa-fw" 
    style="margin: auto;display:block;"></i> 
関連する問題