gatsby-plugin-image 未通过 npm 安装

Posted

技术标签:

【中文标题】gatsby-plugin-image 未通过 npm 安装【英文标题】:gatsby-plugin-image not installing via npm 【发布时间】:2021-06-04 16:56:57 【问题描述】:

我正在尝试按照文档https://www.gatsbyjs.com/plugins/gatsby-plugin-image#installation通过 npm 安装 gatsby-plugin-image

在终端收到以下错误:

$ npm install gatsby-plugin-image gatsby-plugin-sharp gatsby-source-filesystem gatsby-transformer-sharp
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving: gatsby-starter-hello-world@0.1.0
npm ERR! Found: gatsby@2.32.9
npm ERR! node_modules/gatsby
npm ERR!   gatsby@"^2.26.1" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer gatsby@"^3.0.0-next.0" from gatsby-plugin-image@1.0.0
npm ERR! node_modules/gatsby-plugin-image
npm ERR!   gatsby-plugin-image@"*" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.

Package.json 来自 gatsby starter 库中的 hello world starter:


  "name": "gatsby-starter-hello-world",
  "private": true,
  "description": "A simplified bare-bones starter for Gatsby",
  "version": "0.1.0",
  "license": "0BSD",
  "scripts": 
    "build": "gatsby build",
    "develop": "gatsby develop",
    "format": "prettier --write \"**/*.js,jsx,ts,tsx,json,md\"",
    "start": "npm run develop",
    "serve": "gatsby serve",
    "clean": "gatsby clean",
    "test": "echo \"Write tests! -> https://gatsby.dev/unit-testing\" && exit 1"
  ,
  "dependencies": 
    "babel-plugin-styled-components": "^1.12.0",
    "gatsby": "^2.26.1",
    "gatsby-plugin-styled-components": "^3.10.0",
    "gatsby-source-filesystem": "^2.11.1",
    "react": "^16.12.0",
    "react-dom": "^16.12.0",
    "styled-components": "^5.2.1"
  ,
  "devDependencies": 
    "prettier": "2.2.1"
  ,
  "repository": 
    "type": "git",
    "url": "https://github.com/gatsbyjs/gatsby-starter-hello-world"
  ,
  "bugs": 
    "url": "https://github.com/gatsbyjs/gatsby/issues"
  

我在 GH 存储库或通过 Google 搜索没有看到任何与此相关的问题。在https://www.gatsbyjs.com/docs/how-to/local-development/troubleshooting-common-errors/ 尝试了故障排除技巧,但没有成功。没有使用 --force 运行 npm 安装的经验。有什么我需要注意的吗?如果我强制安装,我可以恢复吗?提前致谢!

【问题讨论】:

【参考方案1】:

您似乎正在使用 npm v7,因此适用于您的命令 according to the docs 是:

npm install gatsby@latest --legacy-peer-deps

然后,你就可以运行了:

npm install gatsby-plugin-image gatsby-plugin-sharp gatsby-transformer-sharp

或者,您可以尝试通过以下方式向它们添加旧版对等依赖项:

npm install gatsby-plugin-image gatsby-plugin-sharp gatsby-transformer-sharp --legacy-peer-deps

【讨论】:

第一个解决方案不起作用,但替代方案确实在终端中提供了成功消息。如果有任何问题,我会更新,但这似乎已经解决了这个问题。非常感谢费兰! 在运行所有这三个 npm 命令后,gatsby develop 命令导致错误“无法解析 react-is in node_modules”。 Ran npm i react-is 和开发服务器启动没有问题。仅供遇到此问题的其他人使用。

以上是关于gatsby-plugin-image 未通过 npm 安装的主要内容,如果未能解决你的问题,请参考以下文章

MDX 中的 Gatsby 静态图像(gatsby-plugin-image)

如何在地图功能中使用 gatsby-plugin-image?

Gatsby-plugin-image:更新 Gatsby 客户端后缺少图像道具

React-slick 与 gatsby-plugin-image

使用 gatsby-plugin-image 从 GraphQL 导入和显示多个图像

如何解决迁移错误 env: node\r: from Gatbsy-images to Gatsby-plugin-images with gatsby-codemods?