Graphql 盖茨比源棱镜图形查询结构
从gatsby source prismic跳到gatsby source prismic graphql的任何人都知道查询结构和命名是否相同 例如,我目前正在使用类似下面的内容来表示盖茨比源棱镜Graphql 盖茨比源棱镜图形查询结构,graphql,gatsby,prismic.io,Graphql,Gatsby,Prismic.io,从gatsby source prismic跳到gatsby source prismic graphql的任何人都知道查询结构和命名是否相同 例如,我目前正在使用类似下面的内容来表示盖茨比源棱镜 export const query = graphql` query pageQuery($uid: String!) { page: prismicPageTemplate(uid: { eq: $uid }) { uid type
export const query = graphql`
query pageQuery($uid: String!) {
page: prismicPageTemplate(uid: { eq: $uid }) {
uid
type
data {
title
body {
... on PrismicPageTemplateBodyQuestionSlice {
slice_type
primary {
name
title {
html
text
}
}
}
}
}
}
}
我已经阅读了这两个插件的文档,也看到其他人提出了类似的问题。
盖茨比source prismic的文档将此作为其命名约定
所有文档都将从存储库中提取并创建为
prismic${contentTypeName}和allPrismic${contentTypeName},其中
${contentTypeName}是文档内容类型的API ID
如果我想切换到gatsby source prismic graphql,我是否需要重写所有查询,或者它们是否使用相同的命名约定 我注意到的唯一区别是使用gatsby source prismic graphql进行的查询在查询开始处添加了一个“prismic”字段。例如
{
prismic {
allHomepages {
edges {
node {
title
description
}
}
}
}
}
而对于盖茨比源棱镜而言,该字段不可用。这只是第一种方法,进行简单的查询。我不知道更复杂的、深入文档(用于调用切片或链接字段)的查询彼此是否相似或更不同。所以这是我的第一个猜测。这是一个更复杂的查询版本。我添加了查询名称和两个切片:
query MyHomeQuery {
prismic {
allHomepages {
edges {
node {
title
description
body {
... on PRISMIC_HomeBodyText {
type
label
}
... on PRISMIC_HomeBodyImage_with_caption {
type
label
}
}
}
}
}
}
}
你是对的。gatsby source prismic中的名称将是allPrismicHomePage谢谢Paulina。我有一种感觉,切片可能会有所不同。我一直坚持改变,因为我的项目很大。如果你要添加一个切片,请让我知道结果是什么。但这真的很有帮助,谢谢。我也从你的帖子中注意到,所有的主页都是不同的。这将是盖茨比的AllPrismic主页source prismic?谢谢@paulina这太棒了。我还看到他们用蛇壳(或蛇壳)做切片。PRISMIC_uuwow这将意味着从gatsby source PRISMIC用Graphql重新编写一个相当大的查询。疯子再次感谢你。