首页 > 解决方案 > 棱镜:如何从 API 中提取自定义类型的所有“选择”字段?

问题描述

有点困惑如何做到这一点,如果它甚至可能的话?

假设我有一个名为BLOG的自定义类型

在该自定义类型中,我有一个“选择”选项,您可以在其中选择类别(cat 1、cat 2、cat 3)

如何将类别数组拉入我的反应应用程序?例如,我想要一个可以过滤博客文章的类别列表,并且想要从同一个数组中提取它们,而不是在我的应用程序中创建一个单独的数组,如果这有意义的话?

标签: reactjsapiprismic.io

解决方案


不幸的是,没有一种快速简便的方法可以从 API 中提取 Select 字段的所有可用选项。

为了做到这一点,它会有点复杂,但你有几个选择。

1.查询您的所有文章

第一个选项是查询所有文章文档,然后循环收集所有已选择的 Select 选项。

2. 重做您的选择字段作为内容关系

这有点复杂,但您首先需要为 Select 字段的选项设置一个新的自定义类型。然后为每个选项创建一个新文档。然后,您需要将文章中的选择字段更新为内容关系字段。

然后,您需要进入您的文档并为每个文档选择您需要的选项。这可能需要做很多工作,但最终,您将能够从 API 的单个查询中获取所有可用选项。

这很像这里描述的自定义标记系统:

​<a href="https://intercom.help/prismicio/en/articles/2033431-create-a-custom-tagging-system" rel="nofollow noreferrer">创建自定义标记系统


推荐阅读