我收到以下错误,但无法解决。
错误TypeError:“ this._subscribe不是函数”
Here也是图像形式的完整堆栈跟踪。
我要实现的目标 我有一个名为 ChargingStation 的类,该类具有几个属性,看起来像this。此类的实例应从我的api中获取。此功能由名为 ChargingStationService 的类提供。 ChargingStationService 类中的相应方法显示为here。目前,我只是尝试将模拟的Observable返回。 getChargingStation 方法将从我的 ChargingStationComponent 调用,该方法看起来像this。检索到的 ChargingStation 对象应通过DataBinding在组件视图内显示。但是DataBinding ist不起作用/什么也没有显示。它曾经与服务一起工作,只返回类型为 ChargingStation 的对象,而不是返回 Observable
应用程序流程如何
在 ChargingStationComponent 的 ngOnInit 方法中,它获取在URL / charging-station / {id} 中指定的ID。
ngOnInit() {
this.getChargingStation(+this.route.snapshot.paramMap.get('id'));
}
使用此ID调用 getChargingStation(id)方法。
getChargingStation(id: number): void {
console.log(this.chargingStationService.getChargingStation(id));
this.chargingStationService.getChargingStation(id)
.subscribe(chargingStation => (this.chargingStation = chargingStation));
}
此方法在内部使用注入的 ChargingStationService ,将来会从API中检索 ChargingStations 。当前,此方法看起来像这样,应该返回模拟的充电站可观察到的结果。
getChargingStation(id: number): Observable<ChargingStation> {
let searchedChargingStation= new ChargingStation(
id,
false,
0.37,
this.plugs,
0.0,
0.0,
"Store Street, R802"
);
let observableSearchedChargingStation = Observable.create(searchedChargingStation);
console.log(observableSearchedChargingStation);
return observableSearchedChargingStation;
}
我认为是错误的 我认为Observable.create方法可能是错误的选择,但我还没有找到更合适的方法。
我希望你们中的一些人能帮助我:)非常感谢,圣诞节快乐
问候 扬
答案 0 :(得分:0)
一旦创建了新值,您就不会将其推送给观察者:)
代替
let observableSearchedChargingStation = Observable.create(searchedChargingStation);
这样做:
Observable.create((observer) => {
observer.next(searchedChargingStation);
});
,您的代码应该按原样工作。