2016-02-05 34 views

回答

1

你應該這樣導入:

import {Observable} from 'rxjs/Rx'; 
import 'rxjs/add/operator/map'; // for example to add a specific operator 

,而不是這一個:

import {Observable} from 'rxjs/Observable'; 

我不大氣,但是這個包是你在package.json文件中定義:

{ 
    "name": "apispark-angular2", 
    (...) 
    "dependencies": { 
    "angular2": "2.0.0-beta.0", 
    "es6-promise": "^3.0.2", 
    "es6-shim": "^0.33.3", 
    "reflect-metadata": "0.1.2", 
    "rxjs": "5.0.0-beta.0", <--------------- 
    "systemjs": "0.19.6", 
    "zone.js": "0.5.10" 
    }, 
    (...) 
} 

你需要它來使Angular2工作。例如類EventEmitter類擴展了Subject類,它是rxjs庫的一部分...

+0

謝謝,但angular2-meteor有點不同。我更新了我的問題。我仍然沒有找到讓Rx運行的方法。 –

+0

你在HTML頁面中包含了什麼關於RxJS的內容? 'node_modules/rxjs /捆綁/ Rx.js'?因爲在這個文件中,你可以在最後看到'rxjs/Rx'模塊已經註冊:'System.register(「rxjs/Rx」,[「rxjs/Subject」,「rxjs/Observable」,...' 。我使用的版本是'5.0.0-beta.0'版本。你有沒有相同的? –

+0

我不是100%確定。在angular2-meteor項目中,我們不直接添加HTML。文件**「typings/main.d.ts」**我在tsconfig.json中添加,它是'/// ',並且** rx.d.ts **內容與[this]相同(https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/4d86cc24082d6703ecaee46ecc970bd0ac744236/rx/rx.d.ts) –