UNMET PEER DEPENDENCY jquery @> = 3.0.0& popper.js@^1.11.0

时间:2017-09-25 08:59:45

标签: jquery twitter-bootstrap npm bootstrap-4 popper.js

在使用NPM安装Bootstrap 4(最新测试版)时:`npm install bootstrap@4.0.0-beta,我收到了这条消息:

+-- bootstrap@4.0.0-beta
+-- font-awesome@4.7.0
+-- UNMET PEER DEPENDENCY jquery@>=3.0.0
`-- UNMET PEER DEPENDENCY popper.js@^1.11.0

npm WARN bootstrap@4.0.0-beta requires a peer of jquery@>=3.0.0 but none was installed.
npm WARN bootstrap@4.0.0-beta requires a peer of popper.js@^1.11.0 but none was installed.
npm WARN b4starter@1.0.0 No repository field.

要删除此警告:npm i --save jquery popper.js

但是,为什么第一个命令没有一次安装Bootstrap 4,Jquery和Popper.js?通常NPM应该安装依赖项!!

请解释一下吗?

谢谢

2 个答案:

答案 0 :(得分:5)

问题是在this issue向Bootstrap开发团队报告的。原则上,可以使用Bootstrap 4 without jQuery and Popper,但这两个可选包在与npm一起安装的bootstrap@4.0.0-beta版本中被视为对等依赖。

根据Bootstrap开发人员在讨论中提出的意见,他们将提供两种不同的Bootstrap包:

  • bootstrap-css:它不依赖于jQuery和Popper
  • bootstrap:我认为,它将安装所需的依赖项

答案 1 :(得分:2)

全部取决于npm包中package.json的配置。 如果您检查bootstrap here的存储库,则可以看到:

...
"dependencies": {},
"peerDependencies": {
 "jquery": "^3.0.0",
 "popper.js": "^1.12.3"
},
...

安装npm软件包时,只需将package.json文件中指定的依赖项作为依赖项下载。

如果您想了解有关peerDependecies的更多信息,请点击链接:https://docs.npmjs.com/files/package.json#peerdependencies