要通过本教程创建帖子模板(我在第4部分中): https://www.joaopedro.cc/blog-com-gatsby-e-react-parte-4
但是在执行“ PostPage”查询时发生错误:
Multiple "root" queries found: "PostPage" and "PostPage".
Only the first ("PostPage") will be registered.
Instead of:
1 | query PostPage {
2 | markdownRemark {
3 | #...
4 | }
5 | }
6 |
7 | query PostPage {
8 | markdownRemark {
9 | #...
10 | }
11 | }
Do:
1 | query postPageAndPostPage {
2 | markdownRemark {
3 | #...
4 | }
5 | markdownRemark {
6 | #...
7 | }
8 | }
我查看了类似问题的其他答案,从我的理解来看,这是一个区分大小写的问题,但是从我看来,一切看起来都是正确的。
我并没有错位。 :(预先感谢!
答案 0 :(得分:1)
这里的错误消息实际上很有帮助,但是并不能完全解决问题。
问题在于您只能有一个查询,而您有多个。解决方案是在单个查询中查询所需的所有数据,而不是按照错误提示将其拆分为多个。
A,您正在尝试通过同一字段获取我想象的两个不同的数据集,默认情况下会给您另一个错误。但是这里有一个简单的解决方案:使用aliases对结果中的字段名称进行重复数据删除。
query PostPage {
firstPost: markdownRemark {
#...
}
secondPost: markdownRemark {
#...
}
}
答案 1 :(得分:0)
我刚刚在一个只使用了一个 StaticQuery 的 React 组件中遇到了同样的错误消息。此组件是从另一个项目复制过来的(在那里它可以正常工作,没有任何问题)。
<块引用>我看过类似问题的其他答案,据我所知,这是一个区分大小写的问题...
这帮助我解决了这个问题——结果是 React 组件的名称和 StaticQuery 都不是正确的驼峰式命名(它们包含“SEO”——全部是大写字母)。
清除此部分后错误消息消失。我认为我分享了这个,因为我发现这个上下文中的错误消息令人困惑。
ERROR #85910 GRAPHQL
Multiple "root" queries found: "SEOQuery" and "SEOQuery".
Only the first ("SEOQuery") will be registered.
Instead of:
1 | query SEOQuery {
2 | site {
3 | #...
4 | }
5 | }
6 |
7 | query SEOQuery {
8 | site {
9 | #...
10 | }
11 | }
Do:
1 | query seoQueryAndSeoQuery {
2 | site {
3 | #...
4 | }
5 | site {
6 | #...
7 | }
8 | }