【发布时间】:2018-01-30 18:57:41
【问题描述】:
我想创建 observable 并返回它的值。我有将一些文件一一上传到服务器http post方法的功能使用Observable.forkJoin
这是函数
uploadDocument(data): Observable<any> {
let arr = [];
for (var it in data) {
let input = new FormData();
input.append("file", data[it].value);
let files;
if (data[it].enabled && data[it].value && data[it].value instanceof File) {
arr.push(this.http.post(environment.apiUrl + 'Upload/File', input))
}
}
console.log(arr)
if(arr.length==0){
this.spinner.hide()
}
return Observable.forkJoin(arr);
}
我想做什么。如果数组为空,我想用空数组或 obj 返回 observable。 这是我的订阅功能
this.commonService.uploadDocument(this.DocsForm.controls)
.subscribe(
data=>{console.log(data)},
error=>{console.log(error)}
)
这里的数据是返回文件路径obj的数组
【问题讨论】:
-
Observable.of([])。 reactivex.io/rxjs/class/es6/Observable.js~Observable.html -
.of 有什么作用? @JBNizet
-
我给了你一个文档链接。点击它,然后阅读。
-
您可以像@JBNizet 所说的那样从对象创建一个 Observable,或者您可以使用 Observable.create(observer => observer) 自己创建一个。当然,还有多种其他方法可以实现您想要的。
-
我只是想知道
.of能做什么,因为文档太长而且我只是初学者@Ore
标签: angular rxjs observable