我有这个方法:
export class PeriodicData {
public checkForSthPeriodically(): Subscription {
return Observable.interval(10000)
.subscribe(() => {
console.log('I AM CHECKING');
this.getData();
});
};
public getData(): Observable<MyObject> {
let objects: MyObject[] = this.filterData();
return Observable.from(objects);
}
public filterData(): MyObject[] {
let someData;
// someData = filter(...) // logic to filter data
return someData;
}
}
现在我订阅另一个班级的getData()
:
class Another {
constructor(private periodicData: PeriodicData ) {
this.periodicData.getData().subscribe(obj => {
console.log('IN ANOTHER CLASS');
});
}
}
这不起作用。没有记录“IN ANOTHER CLASS”。我错过了什么吗?
答案 0 :(得分:0)
如果您仅使用实时TypeScript转换器对此进行测试,那么当您没有专门包含Observable
和from
运算符时,它不会引发错误(即使我不知道#39;不知道为什么。)
我已添加到app.component.ts
的顶部,现在可以使用了:
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/from';
在plnkr.co上查看您的演示:http://plnkr.co/edit/uVnwG3bo0N8ZkrAgKp7F