终端上的整个错误消息是:
error GraphQL Error Field "image" must not have a selection since type "String" has no subfields.
这似乎是对错误的真正怀疑,它出现在这里:
gatsby issue 4123 gatsby issue 11412 gatsby issue 11534 gatsby issue 2050 gatsby issue 3531 gatsby remark plugin issue 2 netlify-cms issue 325
以及一些Stackoverflow问题/答案。
但是答案/解决方法无处不在。有些人拼写了错误的文件或订购了错误的插件(我认为)。其他时间,该人员需要在gatsby-node.js的exports.onCreateNode
中进行大量重写。其他时候,解决方法是重新克隆您的存储库,然后再次运行npm install。
无论如何,我尝试了一切的感觉。当他们尝试开始使用盖茨比时,似乎有数十甚至数百人会遇到此错误。他们应该检查什么?他们应该从哪里开始解决此问题?似乎有7件事需要检查...
答案 0 :(得分:2)
遇到此错误时添加到检查表:
确保在 gatsby-conf.js 中配置的文件夹中确实有图像:
{
resolve: `gatsby-source-filesystem`,
options: {
name: `images`,
path: `${__dirname}/src/images`,
},
}
并且它们匹配您的 graphql 中的任何路径。如果您的查询返回“myImage.png”,但它不是图像中的文件,您将收到此错误。
答案 1 :(得分:0)
此错误似乎是由多种原因引起的。就我而言,这是gatsby-config.js中的顺序。我不得不将gatsby-plugin-sharp,gatsby-transformer-sharp和gatsby-transformer-remark移到文件系统插件上方。
对于其他许多人(如果您搜索我提到的那些问题):
祝您好运,您将永远无法恢复那12个小时的生活。