Ich habe eine DataService
, zB .:
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
@Injectable()
export class DataService {
constructor(private http: Http) {}
getData(): Promise<any[]> {
return this.http.get('/api/data')
.toPromise()
.then(response => {
const js_res = response.json();
if (js_res.data){
return js_res.data as any[];
} else {
throw new Error(js_res.info || response.text);
}
})
.catch(err => { console.log(err); });
}
}
diese DataService
wird viele Male in jeder Route genannt. Wenn der Benutzer die Route ändert, können so viele Anfragen ausstehen, und ich möchte alle ausstehenden Anfragen der alten Route abbrechen.
Ich bin neu auf Angular 4, was ist der richtige Ansatz?
'onNgDestroy' aus dem beobachtbaren abmelden oder versprechen –
@RahulSingh aber dies ist ein injizierbares Dienst, vielleicht bin ich falsch, aber es ist nicht auf Routenänderung zerstört. – ar099968
Sie werden dies in Ihrer Komponente verwenden genau dort müssen Sie sich abmelden, oder gehen Sie für Abfangjäger –