2016-06-23 5 views
8

Я изучаю Угловое 2, и у меня возникают проблемы с службой, которая вернет наблюдаемое.Угловая 2 наблюдаемая ошибка - «Параметр« наблюдатель »неявно имеет тип« любой ».

Я вижу эту ошибку, но не уверен, почему? Я пытаюсь следовать некоторым учебникам, которые я нашел в Интернете ...

[ts] Параметр «observer» неявно имеет тип «any».

Мой редактор выделяет работу наблюдателя в начале лямбда.

Я использую Угловое "2.0.0-РК-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

Я уверен, что это не ошибка, а просто информация или предупреждение. – rinukkusu

+0

Вы совершенно правы. Приложение работает нормально с этим предупреждением. Спасибо за вашу помощь. Сейчас я чувствую себя немного глупо. –

+0

Существует опция в машинописном тексте, чтобы сделать это ошибкой. Это стоит того, потому что вы можете вернуть неявный какой-либо интерфейс, и у вас внезапно нет безопасности типа. – KenF

ответ

8

Это не ошибка, но вы можете это исправить так:

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

Не забудьте импорт Observer, хотя!

import { Observer } from 'rxjs/Observer'; 
Смежные вопросы