当使用rxjs interval时,不会调用观察者回调
Observer callback is not invoked when using rxjs interval
我有这个方法:
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');
});
}
}
这是不工作。"在另一个班级"没有被记录。我错过什么了吗?
如果你只使用实时TypeScript转译器进行测试,那么当你没有特别包含Observable
和from
操作符时(尽管我不知道为什么),它不会抛出错误。
我添加到app.component.ts
的顶部,它现在工作:
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/from';
看你的演示在plnkr。公司:http://plnkr.co/edit/uVnwG3bo0N8ZkrAgKp7F
相关文章:
- 未激发路由的控制器属性上的观察者
- 将属性设置为未定义时未通知观察者
- 检测 DIV 的高度何时变化,而无需轮询或突变观察者
- JavaScript:为什么Addy's观察者模式
- 设置多个观察程序以触发动态事件的角度替代解决方案 - 优化的观察者模式
- 被动.js模式间接观察者报告相同的值
- 将$scope对象作为参数提供给$digest中的观察者背后的逻辑
- 取代了棱角分明的深度观察者
- 突变观察者尚未定义
- 突变观察者未能检测到元素's删除dom
- 手动调整元素大小;不要在Chrome中激发突变观察者
- 共同描述编译器和观察者
- 如何确保对观察者的订阅调用最初接收到最新的值
- 未捕获的类型错误:无法执行'观察'在'突变观察者':参数1不是'节点'
- 在jQuery数据表中使用AngularJS观察者的方法是什么
- nodejs:原子文件替换操作,只触发一次一些观察者
- 阵列突变而不触发特定的观察者
- Angular 2的Array Subject .next()不会调用其他组件的观察者
- 调用观察者的JS函数
- 当使用rxjs interval时,不会调用观察者回调