如何使用 Graphql 从 storyblok 加载嵌套数据?

How to load nested data with Graphql from storyblok?

我正在尝试使用一个 graphql 查询获取博客所需的所有信息 post。我正在使用 gridsome and storyblok. For that, I'm using this plugin.

第一个查询使用 ID 从特定博客 post 加载所有内容,但不加载类别或作者等嵌套数据。

例如:

<page-query>
    query StoryblokEntry ($id: ID) {
        storyblokEntry (id: $id) {
            id
            slug
            content
        }
    }
</page-query>

当我测试 ID 为 "story-3850216-default" 的查询时,我得到了这个结果:

{
  "data": {
    "storyblokEntry": {
      "id": "story-3850216-default",
      "slug": "hello-world",
      "content": {
        "_uid": "f5a0bd9d-ec13-4381-ae5f-a7e2bb093fbe",
        "title": "Hello World ",
        "authors": [
          "61dec800-1b17-443e-961a-1cf8ef08d803"
        ],
        "content": "hi",
        "component": "article-post",
        "categories": [
          "e1509e6e-2007-4d4b-8857-4bc1105c5505"
        ],
      }
    }
  }
}

我应该怎么做,才能让作者和类别的值被预加载?

我的背景来自普通的 REST-API,现在我有点不知所措。

由于 Storyblok 具有第一个 class 公民解析属性的组件,因此可以通过 resolve_relations api 函数完成。这使您还可以通过提供组件名称和属性 (YOUR_COMPONENT.YOUR_ATTRIBUTE).

来解析深层嵌套组件中的属性
{
  use: 'gridsome-source-storyblok',
  options: {
    ...
    params: {
      resolve_relations: 'article-post.authors,article-post.categories'
    }
  }
}