gpt4 book ai didi

javascript - Gatsby 控制台警告您的数据中存在冲突的字段类型。在同一个查询中两次使用创建页面时

转载 作者:行者123 更新时间:2023-12-04 03:51:31 25 4
gpt4 key购买 nike

我使用 createPages 进行了一次查询,并使用 result.datacreatePage 两次:

  1. 对于每个页面节点
  2. 对于每页包含多个摘录的列表页,构建页面节点。

现在我收到一条警告,上面写着:

warn There are conflicting field types in your data. If you have explicitly defined a type for those fields, you can safely ignore this warning message. Otherwise, Gatsby will omit those fields from the GraphQL schema.

所以,我的问题是,

  • 这到底是什么意思?
  • 什么明确定义了这些字段的类型?
  • 我可以安全地忽略它吗?

这是我精简的 gatby-node.js 文件

const path = require(`path`)
const { slash } = require(`gatsby-core-utils`)

// Gatsby API “createPages”.
exports.createPages = async ({ graphql, actions }) => {
const { createPage } = actions

const result = await graphql(`
{
allWordpressPost {
edges {
node {
id
path
status
template
format
title
content
excerpt
date
}
}
}
}
`)

// Check for any errors
if (result.errors) {
throw new Error(result.errors)
}

// Access query results via object destructuring
const { allWordpressPost } = result.data

// create pages for each post node.
const postTemplate = path.resolve(`./src/templates/Post.js`)
allWordpressPost.edges.forEach(edge => {
createPage({
path: `/post${edge.node.path}`,
component: slash(postTemplate),
context: { data: edge.node },
})
})

//create summary pages for post nodes.
const blogTemplate = path.resolve(`./src/templates/Blog.js`)
const posts = allWordpressPost.edges //All posts
const postPerPage = 3 //Post excerpts per page
const pages = Math.ceil(posts.length / postPerPage) // Number of pages needed
Array.from({ length: pages }).forEach((edge, index) => {
createPage({
path: index === 0 ? "/blog/" : `/blog/${index + 1}`, //route based on index
component: slash(blogTemplate),
context: {
data: posts.slice(
index * postPerPage,
index * postPerPage + postPerPage
),
pages,
currentPage: index + 1,
},
})
})
}

最佳答案

我解决了。我在两个上下文对象(博客文章和分页博客摘要)上使用了相同的键(data: posts.slice(//...),并将其中一个更改为不同的内容(content: posts.slice(//...).

关于javascript - Gatsby 控制台警告您的数据中存在冲突的字段类型。在同一个查询中两次使用创建页面时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64376966/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com