title: Offload query parts in Apollo client
body: <p>I vaguely remember Apollo supporting a directive / mechanism, which enables offloading parts of the query into a subsequent query. I know this can be achieved combining multiple queries, or by simply loading the details separately, but I think this would be an easy way to provide fast previews without a lot of complexity. I was thinking of something like this:</p>
  <pre><code>query {
    foo {
      bar
      baz @async
    }
  }
  </code></pre>
  <p>And the first response would be in the format of</p>
  <pre><code>{
    &quot;foo&quot;: {
       &quot;bar&quot;: &quot;something&quot;,
       &quot;baz&quot;: null // Or a predefined value
     }
  }
  </code></pre>
  <p>Once it's loaded, the results are passed down to the component to render, while a subsequent request is made with &quot;baz&quot; included:</p>
  <pre><code>{
    &quot;foo&quot; {
       &quot;bar&quot;: &quot;something&quot;,
       &quot;baz&quot;: &quot;else&quot; // baz loaded
     }
  }
  </code></pre>
  <p>Is there such a thing, or it was dreaming about it?</p>
  <p><strong>Edit:</strong></p>
  <p>Apparently there's a <code>deferred</code> directive in the making: <a href="https://www.apollographql.com/blog/community/backend/introducing-defer-in-apollo-server/" rel="nofollow noreferrer">https://www.apollographql.com/blog/community/backend/introducing-defer-in-apollo-server/</a> but I couldn't find any up-to-date information about it.</p>