gatsby-source-prismic-graphql 查询结构
gatsby-source-prismic-graphql query structure
任何人从 gatsby-source-prismic 跳到 gatsby-source-prismic-graphql 并且知道是否查询结构和命名是相同的。
例如,我目前正在为 gatsby-source-prismic 使用类似下面的内容。
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
}
}
}
}
}
}
}
我已经阅读了这两个插件的文档,也看到其他人问过类似的问题。
gatsby-source-prismic 的文档将其作为命名约定包含在内
All documents are pulled from your repository and created as
prismic${contentTypeName} and allPrismic${contentTypeName}, where
${contentTypeName} is the API ID of your document's content type.
如果我想切换到 gatsby-source-prismic-graphql,我是否必须重新编写所有查询,或者他们是否使用相同的命名约定?
我注意到的唯一区别是使用 gatsby-source-prismic-graphql 进行的查询会在查询的开头添加一个 'prismic' 字段。例如。
{
prismic {
allHomepages {
edges {
node {
title
description
}
}
}
}
}
而对于 gatsby-source-prismic,该字段不可用。这只是第一种方法,进行简单查询。我不知道更复杂、更深入文档(用于调用 Slices 或 Link 字段)的查询是否相似,或者彼此之间的差异更大。所以这是我的第一个猜测。
这是一个更复杂的查询版本。我添加了查询名称和两个切片:
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
任何人从 gatsby-source-prismic 跳到 gatsby-source-prismic-graphql 并且知道是否查询结构和命名是相同的。
例如,我目前正在为 gatsby-source-prismic 使用类似下面的内容。
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
}
}
}
}
}
}
}
我已经阅读了这两个插件的文档,也看到其他人问过类似的问题。 gatsby-source-prismic 的文档将其作为命名约定包含在内
All documents are pulled from your repository and created as prismic${contentTypeName} and allPrismic${contentTypeName}, where ${contentTypeName} is the API ID of your document's content type.
如果我想切换到 gatsby-source-prismic-graphql,我是否必须重新编写所有查询,或者他们是否使用相同的命名约定?
我注意到的唯一区别是使用 gatsby-source-prismic-graphql 进行的查询会在查询的开头添加一个 'prismic' 字段。例如。
{
prismic {
allHomepages {
edges {
node {
title
description
}
}
}
}
}
而对于 gatsby-source-prismic,该字段不可用。这只是第一种方法,进行简单查询。我不知道更复杂、更深入文档(用于调用 Slices 或 Link 字段)的查询是否相似,或者彼此之间的差异更大。所以这是我的第一个猜测。
这是一个更复杂的查询版本。我添加了查询名称和两个切片:
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