Jestem nowy maszynopis i Angular2 i próbuję stworzyć obietnicę na żądanie HTTP GET, ale kod poniżej (dokładnie return this.http.get(url)
linia daje mi błąd:błąd TS2346: Dostarczane parametry nie znaleziono żadnych podpis celu wywołania
error TS2346: Supplied parameters do not match any signature of call target.
w mojej służbie mam metoda isLoggedIn
isLoggedIn(): Promise<Object> {
return this.http.get('/some/path')
.map((res: Response) => res.json())
.toPromise();
}
Następnie chcę go używać w moim komponentu tak:
onInit() {
this.login.isLoggedIn()
.then((data: any) => {
if (data.hasOwnProperty('status') && data.status === 401) {
this.router.navigate(['/Login']);
} else {
this.router.navigate(['/Home'])
}
});
}
Szukałem, jak korzystać z żądania http i obiecuję właściwą drogę, ale nie mogłem znaleźć żadnego dobrego opisu.
więc powinienem umieścić parametr w metodzie toPromise(), ale tak naprawdę nie mam pojęcia, co powinienem tam umieścić po żądaniu http.get. Dokumentacja dla A2 jest obecnie bardzo słaba:/i przekopuję się przez Internet, aby znaleźć rozwiązanie. – arthurr
Poszukam też tego. Dlaczego nie trzymasz się Observables? –