2016-03-26 14 views
0

Angular2 HTTPリクエストはobservablesを返します。監視対象に関する文書では、監視対象に対して.map()関数を使用することができます。Angular2 RxJS map()が動作しないのはなぜですか?

しかし、私が観察私のhttpに.map()を使用するとき、私はこのエラーを取得:

argument is not a function. Are you looking for `mapTo()`? 

.mapTo()はやや類似した挙動を提供するようだが、私はここではしないのはなぜ.map() ....仕事を思ったんだけど?

編集:

ありがとう、ここにもう少し情報があります。私はwebpackとAngular 2.0.0-beta.8を使用しています。

省略実際のコードは次のようになります。

import { Observable, map, concatMap, flatMap, reduce, subscribe } from 'rxjs'; 

    getRequest(endpoint) { 
    return this.http.get('https://api.fitbit.com/1/user/-/' + endpoint, 
     { 
     headers: { 
      Authorization: 'Bearer ' + 
      localStorage.getItem(this.name + 'AccessToken'), 
      'Content-Type': 'application/json' 
     } 
     }).map(response => response.json()); 
    } 

    var profileRequest = this.getRequest('profile.json'); 
    var profileRequestLog = profileRequest.map('profile fetched'); 
+0

で動作するように以下をインポートすることができます。 httpリクエストをどのようにして作成したか、使用している角度2のバージョンをサンプルとして投稿できますか? –

+0

RxJSを適切に組み込んだ観測可能なIFで '.map()'を使うことができます。あなたはそうしましたか?ロードされ、正しくマップされていますか?コードとモジュール構成を表示することで、正しい方向に向けることができます。 –

+0

コードを追加してください。 – inoabrian

答えて

2

以下Rx.min.jsファイルはindex.htmlに含まれていることを確認してください。

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/2.0.0-beta.9/Rx.min.js"> 
</script> //CDN reference 

次に、あなたは私が助けることができるかどうかわからないこれにかなり新たなんだ、そうObservableとそのoperators

import {Observable} from 'rxjs/Observable'; 
import 'rxjs/Rx'; 
+0

私はたくさんの輸入品を入れましたが、それらの輸入品はすべて必要でしょうか? angular2に 'map()'のような関連するRxJS関数を含めるべきではありませんか? – benshope

+0

はいrxjsはそれを追加しますが、私の方法に従わなければなりません。インポートrxjs/Rxはすべてのrx演算子をインポートします。あなたがそれをするなら、それはあなたが呼び出す必要はない/個々の演算子をインポートすることに注意してください。 – micronyks

関連する問題