2016-03-26 24 views
0

Angular2 http istekleri gözlenebilirleri döndürür. Gözlemlenebilir dokümantasyonda, .map() fonksiyonunu gözlemlenebilir bir şekilde kullanabilirsiniz. Ben gözlemlenebilir benim http .map() kullandığınızdaAngular2 RxJS neden harita çalışmıyor()?

Ama bu hatayı alıyorum: Ben

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

.mapTo() biraz benzer davranış sağlamak gibi görünüyor, ama merak ediyorum .... neden olmasın .map() işliyor?

DÜZENLEME:

sayesinde burada biraz daha bilgidir. Webpack ve Angular 2.0.0-beta.8 kullanıyorum.

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

çalışmak için aşağıdakileri alabilirsiniz. Http isteğinizi nasıl yaptığınıza dair bir örnek ve belki de kullandığınız açısal 2'nin sürümünü gönderir misiniz? –

+0

RxJS'yi düzgün bir şekilde dahil ettiyseniz, .map() 'yi gözlenebilir bir şekilde kullanabilirsiniz. Bunu yaptın mı? Yüklendiğinden ve doğru şekilde eşlendiğinden emin misiniz? Kodunuzu ve modül yapılandırmanızı göstermek sizi doğru yönde gösterebilmemizi çok daha olası hale getirecektir. –

+0

Biraz kod ekleyebilir misiniz? – inoabrian

cevap

2

emin aşağıdaki Rx.min.js dosya index.html dahildir olun: gibi

kısaltılmış gerçek kod görünüyor.

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

Sonra ben yardımcı olabilir çok emin değilim, ben bu oldukça yeniyim Observable ve operators

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

Bir grup ithalata dahil oldum, ancak tüm bu ithalatlar gerekli olmalı mı? Açısal2, 'map() 'gibi ilgili RxJS işlevlerini içermemelidir. – benshope

+0

Evet rxjs ekleyecek ama yolumu takip etmelisin. Import rxjs/Rx, tüm rx operatörlerini içe aktarır. Bunu yaparsanız, bireysel operatörü çağırmaya/içe aktarmaya gerek yoktur. – micronyks