【问题标题】:Unmet Peer Dependency未满足的对等依赖
【发布时间】:2017-07-13 08:27:35
【问题描述】:

我想安装一个库来处理会话存储和本地存储。我尝试安装 angular2-cool-storagengx-webstorage 但我收到 UNMET PEER DEPENDENCY 错误。 当我运行npm install --save angular2-cool-storage 时,这就是我在终端上得到的结果

CoreUI@1.0.0-alpha.4 d:\q2\Qabess-Web-App
+-- UNMET PEER DEPENDENCY @angular/common@2.4.8
+-- UNMET PEER DEPENDENCY @angular/core@2.4.8
`-- angular2-cool-storage@3.1.0
  `-- UNMET PEER DEPENDENCY zone.js@^0.8.4

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 
(node_modules\chokidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for 
fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: 
{"os":"win32","arch":"x64"})
 npm WARN angular2-cool-storage@3.1.0 requires a peer of 
 @angular/core@^4.0.0 but none was installed.
 npm WARN angular2-cool-storage@3.1.0 requires a peer of 
 @angular/common@^4.0.0 but none was installed.
 npm WARN @angular/core@4.2.6 requires a peer of zone.js@^0.8.4 but none 
 was installed.

package.json

{
"name": "CoreUI",
"version": "1.0.0-alpha.4",
"description": "Open Source Bootstrap Admin Template",
"author": "",
"url": "http://coreui.io",
"copyright": "Copyright 2017 creativeLabs Łukasz Holeczek",
"license": "MIT",
"angular-cli": {},
"scripts": {
"ng": "ng",
"start": "ng serve",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/common": "^2.4.8",
"@angular/compiler": "^2.4.8",
"@angular/core": "^2.4.8",
"@angular/forms": "^2.4.8",
"@angular/http": "2.4.8",
"@angular/platform-browser": "2.4.8",
"@angular/platform-browser-dynamic": "2.4.8",
"@angular/router": "3.4.8",
"@angular/upgrade": "2.4.8",
"angular-2-local-storage": "^1.0.1",
"angular2-cookie": "^1.2.6",
"angular2-cool-storage": "^3.1.0",
"chart.js": "2.5.0",
"core-js": "2.4.1",
"moment": "2.17.1",
"ng2-bootstrap": "1.3.3",
"ng2-charts": "1.5.0",
"ngx-webstorage": "^1.8.0",
"rxjs": "^5.2.0",
"sha256": "^0.2.0",
"ts-helpers": "1.1.2",
"zone.js": "0.7.7"
 },
 "devDependencies": {
 "@angular/cli": "1.0.0-rc.0",
 "@angular/compiler-cli": "2.4.8",
 "@types/jasmine": "2.5.43",
 "@types/node": "7.0.5",
 "codelyzer": "2.0.1",
 "jasmine-core": "2.5.2",
 "jasmine-spec-reporter": "3.2.0",
 "karma": "1.5.0",
 "karma-chrome-launcher": "2.0.0",
 "karma-cli": "1.0.1",
 "karma-jasmine": "1.1.0",
 "karma-jasmine-html-reporter": "0.2.2",
 "karma-coverage-istanbul-reporter": "0.2.3",
 "protractor": "5.1.1",
 "ts-node": "2.1.0",
 "tslint": "4.5.0",
 "typescript": "2.2.1" }

}

【问题讨论】:

  • 您有什么问题吗?我认为警告你可以离开它。否则按照本指南stackoverflow.com/questions/35738346/…
  • 它说'UNMET PEER DEPENDENCY zone.js@^0.8.4',如果你查看你的package.json,你已经定义你只使用0.7.7

标签: angular npm


【解决方案1】:

我认为您需要检查您的托管依赖项。您的依赖方法不匹配。你有 library: "0.8.0" 这样的东西,这意味着 NPM 将安装该版本的依赖项。你也有像library: "^0.8.0" 这样的东西,这意味着完全不同的东西。如果你注意到你的其他输出警告,它会说

npm WARN @angular/core@4.2.6 requires a peer of zone.js@^0.8.4 but none was installed.

你从来没有说过你想要 4.2.6 用于 angular core,你说“^2.4.8”但是由于插入符号,NPM 安装了最新的兼容主要版本的依赖项。

最后,注意最后的警告。它说您尝试添加的库取决于具有与 4.0.0 兼容的版本的角核心。除非您正在处理遗留代码,否则我建议将所有依赖项更新到更高版本。

【讨论】:

    猜你喜欢
    • 2018-01-21
    • 1970-01-01
    • 2016-08-29
    • 2017-08-25
    • 2018-02-28
    • 1970-01-01
    • 1970-01-01
    • 2018-07-12
    • 1970-01-01
    相关资源
    最近更新 更多