2017-11-09 162 views
11

atanabilir değildir :RxJs borusu ve kiralanabilir operatör `map`: 'boşluk' türündeki 'Bu' bağlam I <code>[email protected]</code> den <code>pipe</code> ile kiralanabilir operatör <code>map</code> kullanan bu temel örnek var yöntem en 'Bu' türündeki 'gözlemlenebilir <{}>'

import { map } from 'rxjs/operator/map'; 

let o = of(1, 2, 3, 4).pipe(
    map((v) => v * 2) 
); 

Ama hata sorun burada ne var Error:(34, 5) TS2684:The 'this' context of type 'void' is not assignable to method's 'this' of type 'Observable<{}>'. üretir?

cevap

30

Kiralik örneği operatörleri rxjs/operators ithal edilmelidir:

import { map } from 'rxjs/operators'; 

rxjs/operator ithal edilmektedir olmayan lettable benzerlerinin aksine:

import { map } from 'rxjs/operator/map'; 

daha fazla bilgi edinmek için lettable operatör okumak hakkında:

+0

bunu Google'a gönderebilecek diğer kullanıcılar için: 'first' ayrıca izin verilen bir operatördür – LudvigH

+0

Teşekkürler! Bu, açısal malzemelerin [demo] (https://material.angular.io/components/autocomplete/examples) bileşenlerini denerken saatlerce sıkıştı. – Bnrdo

+0

@ Bnrdo'nun izin verilmeyen eşdeğerlerinden 'map' ithal ediliyorlar, evet, ben de kafam karıştı. İyi şanslar –