1

我将 Gatsby 与 Wordpress 源插件一起使用。到目前为止,一切都很好。但问题是我正在查询可能存在或不存在的字段,在这种情况下,是帖子的特色图片。这是我的查询:

{
allWordpressPost(sort: { fields: [date] }) {
      edges {
        node {
          title
          excerpt
          slug
          featured_media
          better_featured_image {
            wordpress_id
            alt_text
            caption
            description
            media_type
            post
            source_url
          }
        }
      }
    }
}

设置特色图像时效果很好,但否则会失败。所以我的问题是:GraphQL 中有什么方法可以查询可选字段吗?为必填字段添加默认值?我对 GraphQL 太陌生了,所以我什至不确定这是否可行。谢谢你。

4

1 回答 1

2

本文解释了背景故事,但简而言之,您需要确保您的 WordPress 帖子中至少有 1 篇具有特色图片。那么该better_featured_image领域将永远存在。

在javascript中,如果你尝试访问allWordpressPost.edges.node.better_featured_image.wordpress_id并且better_featured_image不存在,你会得到一个语法错误。

在不知道“惨遭失败”的具体含义的情况下,不知道还有什么建议。

于 2018-09-28T16:16:18.050 回答