angular - Angular 7 rxjs/forkJoin:您在预期流的位置提供了“未定义”。您可以提供 Observable、Promise、Array 或 Iterable
问题描述
下面的逻辑 component.js 文件。
ngOnInit() {
const join= forkJoin( this.getReconciliationData()); //import { forkJoin } from 'rxjs/internal/observable/forkJoin';
const subscribe= join.subscribe(result=>this.setReferenceTableData()); //Getting issue here
}
getReconciliationData() {
this.commonService.getMasterData(MaterDataType.LOCALREFERENCES).subscribe(result=>{
this.categories=result;
this.categories.forEach(c => {
c.children.forEach(subC => {
this.references.push(...subC.references);
});
this.subCategories.push(...c.children);
});
});
}
setReferenceTableData=function(){
this.dataSource=new MatTableDataSource(this.references);
}
执行时出错。
***core.js:7187 ERROR TypeError: You provided 'undefined' where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.
at Object.push../node_modules/rxjs/internal/util/subscribeTo.js.exports.subscribeTo (subscribeTo.js:29)
at Object.from (from.js:11)
at _loop_1 (forkJoin.js:42)
at Observable._subscribe (forkJoin.js:67)
at Observable.push../node_modules/rxjs/internal/Observable.js.Observable._trySubscribe (Observable.js:44)
at Observable.push../node_modules/rxjs/internal/Observable.js.Observable.subscribe (Observable.js:30)
at MedicalfileInternalServiceModelComponent.ngOnInit (medicalfile-internal-service-model.component.ts:69)
at checkAndUpdateDirectiveInline (core.js:24503)
at checkAndUpdateNodeInline (core.js:35163)
at checkAndUpdateNode (core.js:35102).***
. 我想在这里寻找 getReconciliationData() 函数的返回对象。但在我的情况下,不需要返回声明。任何人请帮助我们解决这个问题。我需要一个一个的函数执行。
解决方案
forkJoin
期望数组。
试试这样:
const join= forkJoin( [this.getReconciliationData()])
推荐阅读
- tensorflow - 为什么张量流中tanh的梯度是`grad = dy *(1 - y * y)`
- node.js - 错误:未能将一些参考资料推送到“https://git.heroku.com/calm-forest-38557.git”
- javascript - 如何以这种格式连接和制作 json - google sheet 和 js
- vue.js - VueJs 如何删除全局错误处理程序以使用 vue-test-utils 进行测试
- vue.js - 捆绑一个没有 Vuetify 的 Vue-cli 项目
- ios - iOS 如何将新项目添加到集合视图
- pandas - AWS EMR 上带有 pandas 和 pyarrow 的 pyspark 错误:“JavaPackage”对象不可调用
- javascript - 在 vue 中传递道具
- postgresql - 使用 --without-readline 和 --without-zlib 在 SUSE Linux Enterprise Server 11 补丁 3 上安装 Postgresql 12.2
- reactjs - 在使用钩子加载数据之前停止渲染