在Netlify上部署时,我的GraphQL / Gatsby / Contentful查询会引发错误,不需要查询参数

时间:2020-02-20 11:13:26

标签: graphql gatsby netlify contentful

起初,我在本地构建服务器上遇到此错误,但我设法在此修复了该错误……查询仍然相同,但是gatsby不会在查询中引发任何错误。但是每次我尝试在Netlify上进行部署时,都会失败,并显示以下消息:

toFormat seems to be empty, we need a fileExtension to set it.
    1 | fragment GatsbyContentfulFluid_tracedSVG on ContentfulFluid {
 >  2 |   tracedSVG
      |   ^
    3 |   aspectRatio
    4 |   src
    5 |   srcSet
    6 |   sizes
    7 | }
 failed during stage 'building site': Build script returned non-zero exit code: 1
    8 |
    9 | query optbuildreposrccomponentsshopProductsJs2136335468 {
   10 |   products: allContentfulProduct {
   11 |     edges {
   12 |       node {
 Shutting down logging, 22 messages pending
 File path: /opt/build/repo/src/components/shop/Products.js
 Plugin: none

这与我在本地遇到的错误相同,我也不知道为什么会发生。没有理由toFormat是必需的参数。这是使用标准的gatsby-source-contentful插件API请求,该请求过去一直为图片提供服务,而在过去没有问题。如果我将请求更改为“固定”而不是“流体”,那么问题就消失了,但是我需要在网站的这一部分使用流畅的图像。

几天前,我给Netlify工作人员发送了电子邮件,但尚未收到回复。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

对于那些面临相同问题的人,我想出了一个简单的解决方案。

  1. 从使用此扩展名_tracedSVG的所有文件位置中删除。

例如

GatsbyContentfulFixed_tracedSVG 

GatsbyContentfulFixed
  1. 停止gatsby服务器并使用以下命令:

    gatsby clean && gatsby开发

  2. 提交并推送您的更改(以防使用Github)

  3. 在Netlify上找到以下选项:清除缓存并部署站点

它应该修复Netlify上的Deployment以及控制台上的错误:)

答案 1 :(得分:1)

两个建议:

  1. 本地:仔细检查您的内容是否有未添加.png或.jpg后缀的图像参考
  2. Netlify:清除缓存并部署站点