0
У меня есть служба в угловом 2Угловое 2 подписываются не работает
private todosUrl = "http://localhost:3000/HelloWorld"; // URL to web API
constructor (private http: Http) {}
public getTodos(): Subscription {
this.todoList = [];
return this.http.get(this.todosUrl)
.map((res: Response) => {
if (res.status === 204) {
return [];
}
let todosObj: any = res.json();
return todosObj;
})
.flatMap((res: Array<Todo>) => {
return res;
})
.subscribe((todo: Todo) => {
this.todoList.push(todo);
});
}
в http://localhost:3000/HelloWorld возвращает JSON { "Hello World!": "Попробуйте сейчас"}. Но эта функция возвращает ошибку
**Uncaught TypeError: You provided an invalid object where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.
at Object.subscribeToResult (subscribeToResult.ts:81)
at MergeMapSubscriber._innerSub (mergeMap.ts:135)
at MergeMapSubscriber._tryNext (mergeMap.ts:131)
at MergeMapSubscriber._next (mergeMap.ts:115)**
любая помощь пожалуйста?
Вы вообще не нуждаетесь в .flatMap, и это вызывает ошибку (поскольку она ожидает получения Observables не res). просто удалите бит .flatMap :) – Cel