Sanity.io 通过引用获取

Sanity.io Fetching Through References

我正在尝试弄清楚如何通过 Sanity.io 访问完整的对象引用。示例代码:

const fetchExperience = async () => {
  const data = await sanityClient.fetch(`*[_type == 'experience'] {
    company,
    title,
    'techStack': stack[]->technology,
    'imageUrl': image.asset->url,
  }`);

  return data;
};

我声明了另一个名为 Skill 的架构,其中包含两个字段:技术和图标。我在上面使用的这个 Experience 模式引用了 Skill 模式。使用 ,我能够弄清楚如何通过引用获取单个字段并填充名为 techStack 的字段。但是,我想更进一步:我如何编写一个 GROQ,使 returns 我的对象数组可能看起来像这样?:

[
  { technology: 'React.js', icon: 'pretend-this-is-a-link-to-an-asset' },
  ...
]

提前致谢!

您可以执行此操作以获取特定字段:

"techStack": stack[]-> { technology, icon }