gpt4 book ai didi

Angular2 Observable - 函数必须返回值

转载 作者:行者123 更新时间:2023-12-04 05:48:17 24 4
gpt4 key购买 nike

我写了一个 angular2 服务。服务应 - 从另一个服务加载数据 - 使用数据 - 本身应该返回一个带有组件数据的 Observable

所以我写了这个:

getTimers(): Observable<Array<Timer>> {
this.apiService.getTimers().
subscribe(
data => {
this.variables.setTimers(data.length);
let timers: Array<Timer> = this.formatter.formatTimers(data);
this.setOngoingTimers(timers);
return Observable.of(timers);
},
error => { return Observable.throw(error); });
}

这是我得到的错误:

A function whose declared type is neither 'void' nor 'any' must return a value.

有人能指出我正确的方向吗??

最佳答案

getTimers(): Observable<Array<Timer>> {声明返回类型但不返回任何内容。

我假设你想要的是

getTimers(): Observable<Array<Timer>> {
return this.apiService.getTimers().
map(
data => {
this.variables.setTimers(data.length);
let timers: Array<Timer> = this.formatter.formatTimers(data);
this.setOngoingTimers(timers);
return Observable.of(timers);
});,
//error => { return Observable.throw(error); });
}

线

return Observable.of(timers);

仅从传递给 map() 的函数返回(以前的 subscribe() ),但不是来自 getTimers()

关于Angular2 Observable - 函数必须返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43316495/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com