0
現在、Angular2のサービスからObservableオブザーバブルを返そうとしています。次のコードを見て、コンストラクタの行のコメントを外しても、すべて正常に動作し、サービスのコンシューマは壊れません。しかし、私は、コンストラクタから呼び出しを削除しようとすると、それがでクラッシュ: エラー:XHRエラー(404が見つかりません)ロードhttp://localhost:3847/rxjs/observableAngular2サービスで最初のObservable <T>を作成する方法
は、私は前に初期化するのtodo $プロパティに加入しようとしていると信じています。では、実際にgetメソッドを実際に呼び出さない初期オブザーバを作成するにはどうすればよいですか?つまり、サブスクリプション・ラインが落ちるのを止める何らかの空のObserverが必要です。
これをどのように達成する必要がありますか?
トニー
import {Injectable} from 'angular2/core';
import {Http} from 'angular2/http';
import {Todo} from './todo';
import {Observable} from 'rxjs/observable'
@Injectable()
export class TodoService {
public todos$: Observable<Todo[]>;
constructor(private http: Http) {
//this.todos$ = this.http.get('api/Todo').map(res => <Array<Todo>>res.json());
}
loadData() {
this.todos$ = this.http.get('api/Todo').map(res => <Array<Todo>>res.json());
}
}
でなければなりません。私は大文字の "O"に変わり、赤いスクイプレーが並んでいます。 – tone
小文字の「観測可能」で私に起こります。 http://stackoverflow.com/questions/34376854/delegation-eventemitter-or-observable-in-angular2/35568924も参照してください。あなたの 'config.js'の外観はどうですか? –
Webstormで自動インポートを使用すると、大文字の「O」も得られます。小文字で失敗します。 – PierreDuc