node.js - Npm 对等依赖错误

标签 node.js npm package.json

我使用 npm install 命令反复收到 npm peer 依赖错误。这是我的 package.json,我对 react 和 webpack 有未满足的对等依赖

    npm WARN react-datepicker@0.25.0 requires a peer of react@^0.14.0 but none was installed.
    npm WARN babel-loader@6.2.4 requires a peer of webpack@1 || ^2.1.0-beta but none was installed.
    npm WARN desktop-react@1.0.0 No repository field.
    npm WARN desktop-react@1.0.0 license should be a valid SPDX license expression

{
  "name": "xxxxxxxxx",
  "version": "x.x.x",
  "description": "",
  "main": "index.js",
  "author": "",
  "license": "xxxxxxx",
  "dependencies": {
    "bootstrap": "^3.3.6",
    "fs": "0.0.2",
    "history": "^1.17.0",
    "immutable": "^3.8.1",
    "isomorphic-fetch": "^2.2.1",
    "lodash": "^4.11.1",
    "moment": "^2.13.0",
    "react": "^15.0.1",
    "react-autosuggest": "^3.7.3",
    "react-bootstrap": "^0.29.1",
    "react-datepicker": "^0.25.0",
    "react-dom": "^15.0.1",
    "react-redux": "^4.4.5",
    "react-router": "^2.3.0",
    "react-select": "^1.0.0-beta12",
    "redux": "^3.5.2"
  },
  "devDependencies": {
    "babel-core": "^6.7.7",
    "babel-loader": "^6.2.4",
    "babel-preset-es2015": "^6.6.0",
    "babel-preset-react": "^6.5.0",
    "bootstrap": "^3.3.6",
    "css-loader": "^0.23.1",
    "redux-devtools": "^3.2.0",
    "style-loader": "^0.13.1"
  }
}

最佳答案

首先,这些不是错误,而是警告。它们实际上不会阻止您的代码运行,它们只是在您的依赖项出现问题时提醒您。

实际上,peerDependencies 是包指定的一种方式,“要使用我,您还应该安装 x 版本的 y 包”。在您的情况下,您有两个问题:

  • 那个版本的 react-datepicker 期望你使用 React 14,但你有 React 15。如果你将 react-datepicker 更新到最新版本,那个将与 v15 兼容——也就是说,如果我没记错的话,这两个版本的 React 之间几乎没有重大变化,所以如果你因为某种原因无法使用特定版本的日期选择器,应该 可以安全地忽略该警告。不过,您的里程可能会有所不同。
  • babel-loader 依赖于 Webpack,但你没有安装它的任何版本。这似乎是您的一个错误。运行 npm install webpack --save-dev 应该会消失。

希望您能够在这种情况下理解将来如何解释这些警告!

关于node.js - Npm 对等依赖错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37185017/

相关文章:

node.js - 安装nodetime时编译出错

typescript - 如果 npm 或 yarn 存在于 Typescript 项目中,它们是否具有自动安装 @types 的功能?

node.js - 使用 Node@10.9.0 导入 o​​racledb@3.0.0 时 mkdir 权限错误

json - 如何将 package.json 导入 Typescript 文件而不将其包含在编译输出中?

npm install issue : 27 vulnerabilities (16 moderate, 9 high, 2 critical) 要解决所有问题,请运行:npm audit fix --force

javascript - 如何将 KEYS 分配给 client.keys() 函数中的值?

javascript - 使用 AngularJS 和 Node 更新 mongodb

node.js - 覆盖 ReactJS 中的根路径

javascript - 使用 NodeJS 实现自动化

javascript - 通过 npm update 更新 Electron 应用程序