2016-02-05 35 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) –