我有一个if子句检查window全局对象是否存在cordova,如果存在,它将执行http请求并返回默认的angular 2 http observable。
如果应用程序处于Web上下文中,则cordova将不存在,因此该功能不应执行任何操作。
但是为了订阅它,我需要返回一个observable,否则我将得到无法订阅null错误。我目前的解决方案是返回Observable.empty(),
但这样安全还是有更优雅的东西?谢谢!
public init():Observable<Response>{
if(window.cordova){
return this.http.get(...)
} else {
return Observable.empty()
}
}
这是代码,并注意我需要更改为使其工作...有没有办法返回Observable?
答案 0 :(得分:1)
现在还不清楚你的问题是什么.. :))
return Observable.of(null);
?
return Observable.of(undefined);
?