当超过 6 个参数时 Observable.forkJoin 返回错误类型

2024-02-28

我遇到 Observable.forkJoin 的问题,它推断出错误的返回类型,然后在传递超过 6 个参数时导致错误。

Observable.forkJoin(service.getType1, service.getType2, service.getType3 ...)
        .subscribe(x => {
            this.type1Arr = x[0];
            this.type2Arr = x[1];
            this.type3Arr = x[2];

来自服务的每个函数调用都会返回一个Observable<Array<type>>。编译器正在确定返回应该是Type1[][]当我从服务传入的调用超过 6 个时。尽管最多 6 个调用,它仍能正常工作,它将获得正确的返回,并且我可以分配强类型结果。

我正在使用 rxjs 5.4.3 和 Typescript 2.4.0(Visual Studio 的 Typescript 工具是 2.5.2)。

有没有解决这个问题而不需要强制转换的方法?


的打字forkJoin定义最大值forkJoin有 6 个参数,如下所示:https://github.com/ReactiveX/rxjs/blob/master/src/observable/ForkJoinObservable.ts#L27 https://github.com/ReactiveX/rxjs/blob/master/src/observable/ForkJoinObservable.ts#L27

请注意,调用方式有多种forkJoin超过 6 个参数:

Observable.forkJoin(observables)

or

Observable.forkJoin(...observables)

您还可以强制返回类型(https://github.com/ReactiveX/rxjs/blob/master/src/observable/ForkJoinObservable.ts#L35 https://github.com/ReactiveX/rxjs/blob/master/src/observable/ForkJoinObservable.ts#L35):

Observable.forkJoin<Whatever[]>(observables)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当超过 6 个参数时 Observable.forkJoin 返回错误类型 的相关文章

随机推荐

  • 有没有一种好方法可以让 Map get 和 put 忽略大小写? [复制]

    这个问题在这里已经有答案了 有没有好的方法可以有一个Map
  • 如何使用离线设备捕获地理位置 - cordova

    我正在使用 cordova 开发一个应用程序 并发现需要获取用户的纬度和经度数据 但我的应用程序将离线使用 无需互联网访问 我有两个问题 1 如何检查设备是否启用 GPS 2 如何在没有互联网连接的情况下离线获取纬度和经度 这是可能的 我会
  • 在 React 中设置单选按钮值

    我正在制作一个简单的反应应用程序 其表单具有单选按钮 这里有一个可用的默认数据 例如 const defaultData ContactMode 3 ContactMode 2 ContactMode 2 要求 gt 需要迭代这个defau
  • Tensorflow:“GraphDef 不能大于 2GB。”分配变量后保存模型时出错

    我想用一个预训练的模型来热启动另一个有一点差异的模型 简而言之 我创建一个新模型 并使用预训练的模型权重分配具有相同名称的变量 但是 在保存模型时 出现错误 Traceback most recent call last File tf t
  • Android 应用程序在发布中崩溃,但在调试 NullPointerException 中不会崩溃

    由于从我正在使用的 API 返回的数据发生了更改 我最近更改了 2 行代码作为解决方法 现在 当使用发布的 apk 和 aab 时 应用程序崩溃 但是 当我通过 API 27 上的 Android 模拟器使用该应用程序并将 API 27 设
  • 多线程中 volatile 变量的值不会改变

    我有一个在后台运行的 winform 应用程序BackgroundWorker它有一个无限循环 每小时执行一些事情 我的用户界面Form类是这样的 public partial class frmAutoScript Form privat
  • 未找到 System.Data 程序集

    我有一个参考System Data在我的Windows服务项目中 我不断得到Exception 无法加载文件或程序集 System Data Version 4 0 0 0 Culture neutral PublicKeyToken b7
  • SkipList 与 Dictionary

    我最近一直在阅读有关跳过列表的内容 我有一个 Web 应用程序 它对静态数据集执行相当复杂的 Sql 查询 我想实现一个缓存系统 生成 sql 查询的 md5 哈希值 然后返回查询的缓存数据集 如果集合中存在该数据集 哪种算法更好 字典还是
  • 如何在android中列表视图为空时显示消息

    我是 Android 方面的新手 我正在创建一个应用程序 其中包含将动态填充的列表视图 我的要求是当列表为空时 我想显示一条消息 我不想仅仅为了显示此消息而创建其他视图 有什么好的方法可以做到这一点吗 有什么建议么 ListActivity
  • 语法错误:插入“enum Identifier”,插入“EnumBody”,插入“}”

    我编写了一个枚举类型 当我运行为其创建的 JUnit 测试时 该类型会出现以下语法错误 java lang Error Unresolved compilation problems Syntax error insert enum Ide
  • 需要 python lxml 语法帮助来解析 html

    我是 python 的新手 我需要一些有关使用 lxml 查找和迭代 html 标签的语法的帮助 以下是我正在处理的用例 HTML 文件的格式相当好 但并不完美 屏幕上有多个表格 其中一个包含一组搜索结果 每个表格包含页眉和页脚 每个结果行
  • 每天第一次调用网络服务很慢

    在构建此 Web 服务和调用它的应用程序时 我们注意到每天对该 Web 服务的第一次调用非常慢 有时甚至会超时 然而 此后的每一次通话都效果很好 有人能解释一下为什么会这样以及我们如何摆脱这种痛苦吗 提前致谢 如果是 ASP NET Web
  • 更改seaborn箱线图线彩虹颜色

    I found this beautiful graph online apparently made with plotly and wanted to recreate it with seaborn 到目前为止 这是我的代码 impo
  • AngularJS 实现模板本地化

    我想实现视图的本地化 也应该包括正文 我之前通过加载 JSON 文件并通过键进行迭代来完成此操作 键是类名 比我简单地将键的值分配给 元素与类 语言文件 JSON Header Title My Title Header Text Lore
  • Jersey 2 + HK2 - @ApplicationScoped 不工作

    我有课 ApplicationScoped public class Service private Map
  • (bool) 可靠地转换为 0 或 1 吗? [复制]

    这个问题在这里已经有答案了 来自一些reading https stackoverflow com questions 6627178 c99 why are false and true defined as 0 and 1 and no
  • iOS 中可用的路径目录

    NSSearchPathDirectory 这些常量指定各种目录的位置 enum NSApplicationDirectory 1 NSDemoApplicationDirectory NSDeveloperApplicationDirec
  • 将Angular2项目集成到Tomcat服务器中

    我为我的项目开发了一个 Spring maven Rest api 对于客户端 我使用 Angular2 和 typescript 作为 Angular 的新手 参考 Angular 网站进行开发 使用 npm 和 lite server
  • C# Winform 网格渲染在 Windows 7 上缓慢

    我注意到 C winform datagrid 在我的 windows 7 64 位机器上非常慢 对于具有 1000 行 足够的列 文本以适合屏幕宽度的标准网格 我看到滚动时出现明显的渲染延迟 即滚动 滚动条移动滞后约 0 5 秒而不是平滑
  • 当超过 6 个参数时 Observable.forkJoin 返回错误类型

    我遇到 Observable forkJoin 的问题 它推断出错误的返回类型 然后在传递超过 6 个参数时导致错误 Observable forkJoin service getType1 service getType2 service