您好我正在为Angular5应用程序编写单元测试用例。我正在调用一个函数loadscopesdata(),如下所示。
loadScopesData() {
this.scopeService.getScopesByTenantId(this._searchText, this._onlyActive).subscribe(results => this.onScopesDataLoadSuccessful(results), error => this.onScopesDataLoadFailed(error));
}
在服务之下打电话。
getScopesByTenantEndpoint<T>(searchText: string, onlyActive: boolean): Observable<T> {
var scopes = localStorage.getItem('scopeObject');
if (scopes) {
return Observable.create(scopes);
}
else {
return Observable.empty();
}
}
每当执行上面的代码时,它总是将控制返回到onScopesDataLoadFailed。有人可以帮我搞清楚吗?谢谢。
答案 0 :(得分:0)
afaik Observable.create主要用于告诉如何将价值传递给订阅者,您已经拥有自己的价值并且不想处理某些特殊情况,因此您可以尝试简单地使用{{1}而不是。
[使用Observable.create()]
return Observable.of(scopes)