是否有其他方式可以编写以下功能?简化空观察功能
getStation(id) {
if (id) {
return this.httpClient.get('/api/stations/edit/' + id, {})
}else {
return Observable.empty();
}
}
getStation(id) {
return id ? this.httpClient.get('/api/stations/edit/' + id, {}) : Observable.empty();
}
我想知道是否有一种方法来去除else
一部分,默认情况下,如果没有返回功能,返回一个空观测。
但是这种方式不行。
(这是所有关于好奇心......我会用“其他”来我的代码)
不,您不能纯粹从定义方法中给出某种默认返回。如果你说它返回'Observable',你必须在某个时候明确地做到这一点。 –
jonrsharpe
所以...你想要的东西完全符合'else'的要求,但不是'else'或者三元组?我不确定你的目标是什么。 –
但是,您可以指定它可能会返回多种类型。只需在类型之间使用管道符号。可观测的 | otherTypeHere。但它通常不是很好的做法。 –
diopside