2016-06-23 11 views
8

Uczę się Angular 2 i mam problem z usługą, która ma zwrócić obserwowalne.Błąd obserwowalny kątowy 2 - "Obserwator parametrów" niejawnie ma "dowolny" typ. "

Widzę ten błąd, ale nie jestem pewien, dlaczego? Próbuję wykonać kilka samouczków znalezionych w Internecie ...

[ts] Parametr "obserwator" niejawnie ma "dowolny" typ.

Mój redaktor podkreśla pracę "obserwatora" na początku lambda.

Używam kątowa "2.0.0-rc.2"

import { Injectable } from '@angular/core'; 
import { Observable } from 'rxjs/Observable'; 

@Injectable() 
export class LocationService { 

    constructor() { } 

    getLocation(): Observable<string> { 

     let data: Observable<string>; 

     data = new Observable<string>(observer => { 
      observer.next("123") 
     }); 

     return data; 
    } 
} 
+0

Jestem pewien, że to nie jest błąd, a jedynie informacja lub ostrzeżenie. – rinukkusu

+0

Masz całkowitą rację. Aplikacja działa poprawnie z tym ostrzeżeniem. Dzięki za pomoc. Teraz czuję się trochę głupio. –

+0

Istnieje opcja w maszynopisie, która powoduje, że jest to błąd. Warto, ponieważ możesz zwrócić implicite na interfejs i nagle nie masz bezpieczeństwa typu. – KenF

Odpowiedz

8

To nie jest błąd, ale można go naprawić tak:

data = new Observable<string>((observer: Observer<string>) => { 
    observer.next("123") 
}); 

Nie zapomnij importuj Observer, chociaż!

import { Observer } from 'rxjs/Observer'; 
Powiązane problemy