Angular2 RxJS Observable.fromEvent(..)。map看起来不可用

时间:2016-07-05 23:24:38

标签: angularjs angular rxjs

跟随RxJS的autocomplete example。我怀疑我使用的Observable可能与本例中的Observable不同?

以下是我如何设置它:

@ViewChild('searchInput') input: ElementRef;
...
var keyups = Observable.fromEvent(this.input.nativeElement, 'keyup')
// this returns FromEventObservable instead of Observable which may be the reason? 

此时,我可以调用.subscribe并查看事件流程:

keyups.subscribe( e => console.log(e));

然而,这并没有显示任何****:

  keyups.map( e => console.log('e ', e) );

我的导入如下:

import { Observable } from 'rxjs/Rx';

但我也尝试过单独进口:

 import 'rxjs/add/observable/fromEvent';
 import 'rxjs/add/operator/map';
 import 'rxjs/Rx';

的package.json

"rxjs": "5.0.0-beta.6",

1 个答案:

答案 0 :(得分:2)

要让Observable实际执行某些操作,您需要订阅它。

map

keyups.map(e => console.log('e ', e))运算符旨在从一个值映射到另一个值。因此,在console.log之后,您会收到undefined返回的Observable - 这可能是.do并且没有意义。尽管如此,如果您只是需要一些像记录一样的副作用,那么你可以更好地使用onActivityResult()