我正在使用AngularJS 2 Beta 0,我試圖從窗口對象上的事件創建RxJS Observable。我相信我知道捕獲事件作爲可觀察到的在我服務的公式:Angular2 RxJS獲取'Observable_1.Observable.fromEvent不是函數'錯誤
var observ = Observable.fromEvent(this.windowHandle, 'hashchange');
的問題是,每次我試圖運行此代碼時,我得到一個錯誤,指出「fromEvent」不是一個函數。
Uncaught EXCEPTION: Error during evaluation of "click"
ORIGINAL EXCEPTION: TypeError: Observable_1.Observable.fromEvent is not a function
這似乎意味着,我認爲我不會處理我import
正確現在不包括RxJS中的角2的身材,雖然我的應用程序的其餘功能正常,意味着RxJS這對我是它應該是的地方。
我在服務導入是這樣的:
import {Observable} from 'rxjs/Observable';
雖然我還試圖用這個代替(用適當的修改代碼),具有相同的結果:
import {FromEventObservable} from 'rxjs/observable/fromEvent';
我在我的Index.html中有以下配置:
<script>
System.config({
map: {
rxjs: 'node_modules/rxjs'
},
packages: {
'app': {defaultExtension: 'js'},
'rxjs': {defaultExtension: 'js'}
}
});
System.import('app/app');
</script>
有人可以告訴我什麼我做錯了嗎?
爲什麼我們要添加一切從rxjs,我們不能只添加所需的部分 –
@MahmoudHboubati是的,你可以帶入只需要的部分。請參閱下面的答案。這是導入東西的正確方法,以便您不會膨脹資產包。 – SgtPooki
這是不推薦使用..你應該永遠不會導入所有的運營商(因此從來沒有使用從'rxjs/RX' – Mackelito