我正在使用AngularJS 2 Beta 0,我正在尝试从窗口对象上的事件创建一个RxJS Observable.我相信我知道在我的服务中将事件捕获为Observable的公式:
var observ = Observable.fromEvent(this.windowHandle, 'hashchange');
Run Code Online (Sandbox Code Playgroud)
问题是,每次我尝试运行此代码时,都会收到一条错误消息,指出'fromEvent'不是函数.
Uncaught EXCEPTION: Error during evaluation of "click"
ORIGINAL EXCEPTION: TypeError: Observable_1.Observable.fromEvent is not a function
Run Code Online (Sandbox Code Playgroud)
这似乎意味着我现在没有import正确处理我,因为RxJS没有包含在Angular 2的构建中,尽管我的应用程序的其余部分正常运行,这对我来说意味着RxJS应该是它应该的位置.
我在服务中的导入如下所示:
import {Observable} from 'rxjs/Observable';
Run Code Online (Sandbox Code Playgroud)
虽然我也尝试使用它(对代码进行适当的更改),但结果相同:
import {FromEventObservable} from 'rxjs/observable/fromEvent';
Run Code Online (Sandbox Code Playgroud)
我的Index.html中有以下配置:
<script>
System.config({
map: {
rxjs: 'node_modules/rxjs'
},
packages: {
'app': {defaultExtension: 'js'},
'rxjs': {defaultExtension: 'js'}
}
});
System.import('app/app');
</script>
Run Code Online (Sandbox Code Playgroud)
有人能告诉我我做错了什么吗?