【发布时间】:2020-05-15 00:02:18
【问题描述】:
我有无法编辑的代码,但我可以。
我无法编辑的代码如下:
this.getLogs()
.toPromise()
.then((resp: any) => ({
data: resp['results'],
totalCount: resp['count']
}));
我可以编辑的代码如下。
private getLogs() {
if (this.id) { // I added this
params = {};
params['log_id'] = this.id;
const url = `${AppGlobal.API_URL}${thislogsUrl}`;
return this.http.post(
url,
params,
this.authService.getRequestOptions()
).pipe(catchError(error => this.handleError(error)));
} else { // I added this
return <---- What do I put here????
}
}
我无法为世界上所有的谷歌搜索找到我应该在返回时放置的内容,这会使我无法编辑的代码变得快乐。
无论我返回什么都必须具有“toPromise()”类型。但我实际上并不想在这种情况下进行 api 调用(我缺少参数的情况)
我试过了:
- return new Observable(string).delay(500);
- return new Promise(null);
- return Rx.Observable.of('o').delay(500);
- 不返回
但这些都不是正确的语法。
底线是我不想得到错误状态。在这种情况下,我希望它保持沉默。最好什么都不做。
【问题讨论】:
-
https://stackoverflow.com/a/39032365/10342976 我认为这会对您的情况有所帮助。
-
是的,行得通。 (下面的评论)
标签: angular promise rxjs return