2017-10-01 9 views
-1

私の関数の戻り値の型がObservableであるところでブール値(真または偽のみ)を返したい<ブール値>。角度2を使用する際に真偽値だけを返すにはどうすればよいですか。私は多くを試みていますが、この問題を解決することはできません。どうしたらいいですか?事前に角度2のサービスメソッドでブール値を返します。

CheckValidation(measurementUnitId: string, itemId: string): Observable<boolean> { 
    const url = `api/v1.0/measurementUnits/${measurementUnitId}/items/${itemId}`; 
    debugger; 
    var returnValue = this.http.get(url) 
     .do(result => console.log('CheckValidation: ' + result)) 
     .catch(this.handleError); 
    //Here I need the value of returnValue variable will be true or false. 
} 

ありがとう:

以下は私のコードです。

+0

あなたは、あなただけの 'CheckValidation'が使用されているか私たちを見ることができないことができます。視覚的に表現するために

はReactiveXのマニュアルを参照してください。 –

+0

[角度2 - Observableから直接データを返す](https://stackoverflow.com/questions/37867020/angular-2-return-data-directly-from-an-observable) – jonrsharpe

答えて

0

Suren Srapyanはそれに私を打つが、私はこのもう少し明確にしたい:

あなたがmap()演算子を使用している場合、あなたはあなたが観測から得るものは何でも値取り、別の値にマップします。あなたのケースでは、サーバが成功した操作で応答する場合はtrueにマッピングされ、それ以外の場合はfalseにマッピングされる可能性があります。

外部のObeservableのサブスクライバは、元のObservableからの実際の値を「参照」せず、ブール値のみを取得します。

http://reactivex.io/documentation/operators/map.html

関連する問題