盖茨比构建始终丢失输入文件丢失或图像格式不受支持

时间:2018-06-01 06:31:03

标签: gatsby

可以在https://github.com/gatsbyjs/gatsby/issues/5638

找到问题的完整说明

简而言之,我使用Array ( [data] => Array ( [0] => 123bcd [1] => 635bdd ) ) gatsby-plugin-remark来优化放置在md文件前端的图像。

说我的降价文件有

gatsby-transformer-remark

我查询它就像

---
title: Beautiful UI
featured_image: ../../images/project-vscbui.png
subtitle: A set of color themes for VSCode
order: 90
link: https://vscbui.rocks
templateKey: projects
---

...

export const projectQuery = graphql` query ProjectQuery { projects: allMarkdownRemark( sort: { order: DESC, fields: [frontmatter___order] } filter: { frontmatter: { templateKey: { eq: "projects" } } } limit: 1000 ) { edges { node { id frontmatter { title subtitle featured_image { childImageSharp { sizes(maxWidth: 960) { ...GatsbyImageSharpSizes } } } link } html } } } site { siteMetadata { shortTitle } } } `; 效果很好。但是当我运行gatsby develop时,它没有给出错误

gatsby build

虽然构建实际上工作得很好

要重现,请分叉此存储库https://github.com/swashata/swas.io并运行success Building static HTML for pages — 3.818 s error Input file is missing or of an unsupported image format Error: Input file is missing or of an unsupported image format error UNHANDLED REJECTION Error: Input file is missing or of an unsupported image format 。也可以在此处找到错误日志https://app.netlify.com/sites/optimistic-perlman-163196/deploys/5b10e5cdb3127429bf8a5d5d

我已经尝试过解决这个问题的所有方法

  1. 将featured_image添加到每个frontmatter。
  2. 从graphql中删除featured_image查询。
  3. 删除gatsby-remark-images插件。
  4. 但似乎没有任何效果,除了实际删除图像和锐利的插件。

    非常感谢任何寻找问题的帮助。

4 个答案:

答案 0 :(得分:2)

事实证明我实际上有一个丢失的图像文件。

我正在使用gatsby-plugin-manifest,我放在那里的图片路径是src / img / ninja.png,但应该是src/images/ninja.png。之前我更改了目录名,完全忘了为配置文件重构它。我已经纠正了,而且工作正常。

所以底线是,当发生此错误时

  1. 查找所有图像文件。特别是在gatsby-config.js档案中。
  2. 检查输出目录,看看它是否实际包含"锐利的图像。
  3. 我采用的调试路径是在markdown文件中逐个禁用图像。但由于它没有解决问题,我开始寻找其他地方然后gatsby-config.js注意到了。完全是我的错。

答案 1 :(得分:1)

对我来说,我的图片正确,此问题已通过以下方法解决:

rm -rf node_modules
rm package-lock.json
npm cache clear --force
npm install

来源:https://github.com/gatsbyjs/gatsby/issues/21515#issuecomment-588416624

答案 2 :(得分:0)

只需将其添加到package.json

“决议”:{ “清晰”:“ 0.24.0” }

答案 3 :(得分:0)

在我使用gatsby-plugin-manifest更改图标图标后,这发生在我身上。我给新图标起了相同的名字,导致了错误。更改src/images/...中的图标名称和gatsby-config.js中的插件选项可以解决此问题。