代码之家  ›  专栏  ›  技术社区  ›  jorgen

在批处理外发送阿波罗请求

  •  0
  • jorgen  · 技术社区  · 6 年前

    batch requests 设置。但是,有些请求不应包含在批处理中:

    • 组件依赖于要加载的请求的“小”版本
    • 如果小的和完整的请求是在同一批中发送的,那么在完整的请求完成之前它不会返回,这需要很长时间。

    我想到了两个非理想的解决方案:

    • onCompleted . 不太理想,因为速度我想同时启动这两个
    • split 在适当的情况下提出请求。会有用的,但我不想有额外的终点

    有什么想法吗?

    1 回复  |  直到 6 年前
        1
  •  3
  •   Herku    6 年前

    我不是这方面的专家,但似乎 batchKey 中的选项 apllo-link-batch-http 就是你要找的。例如,最简单的方法是在操作前加上关键字:

    const link = BatchHttpLink({
      batchKey: operation =>
        operation.name && operation.name.value.startsWith('eager_') ? 'eager' : 'normal'
    });