0
私は角度2を学習し始めました。インターネットがダウンしているときやサーバーがダウンしているときにretry()機能を実装しようとしました。現在、私のインターネットがダウンしているときにAPIコールが失敗し、ローダーが無期限に実行されています。だから、私はretry()の機能を実装しようとしています。Angular2:Rx.Observable.retry()の機能を実装する
Component.ts:
import { Component } from '@angular/core';
import { ItemService } from './item.service';
@Component({
selector: 'itemspage',
templateUrl: 'items.component.html',
providers: [ItemService]
})
export class ItemComponent implements OnInit {
constructor(private itemService: ItemService) { }
items: string[] = [];
loader: boolean = false;
ngOnInit() {
this.loader = true;
this.itemService.loadItems()
.subscribe((resp) => {
this.items = resp.data;
this.loader = false;
});
}
}
Service.ts:
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class ItemService {
constructor (private http: Http) {}
loadItems() {
return this.http.get('localhost:8080/****')
.map(res => res.json());
}
}
を、私はこの記事が見つかりました:https://github.com/Reactive-Extensions/RxJS/blob/master/doc/api/core/operators/retry.md をしかし、私の場合に実装する方法がわかりません。助けて。
あなたはあなたのコード内の任意の場所に再試行は使用しないでください。 – micronyks
ええ、私はどこで使うべきかわかりません。私はcomponent.tsで試しましたが、エラーが発生しました。だから私はそれを取り除いた。 – NNR
これはObservable演算子です。だからあなたはObservableでそれを呼びます。 get()の後、またはmap()の後、またはloadItems()呼び出しの後。 –