Angular package.json 和未满足的对等依赖项
Posted
技术标签:
【中文标题】Angular package.json 和未满足的对等依赖项【英文标题】:Angular package.json and unmet peer dependencies 【发布时间】:2017-11-06 16:28:36 【问题描述】:我正在尝试开发一个 Angular 项目,并且一直在使用 CLI。我也在尝试使用其他一些组件,例如angular handsontable 和primeng。然而,当我只是想看看我安装了一些软件包的版本时,包括 Angular 本身,我为自己解开了一个巨大的困惑。
例如,如果我想检查已安装的 primeng 版本,我看到我可以执行 `npm list primeng'。我明白了:
C:\Code\path-to-my-project>npm list primeng
+-- UNMET PEER DEPENDENCY @angular/common@4.1.3
+-- UNMET PEER DEPENDENCY @angular/compiler@4.1.3
+-- UNMET PEER DEPENDENCY @angular/core@4.1.3
+-- UNMET PEER DEPENDENCY @angular/forms@4.1.3
`-- primeng@4.0.3
npm ERR! peer dep missing: @angular/common@^2.3.1, required by ng2-handsontable@0.48.0
npm ERR! peer dep missing: @angular/compiler@^2.3.1, required by ng2-handsontable@0.48.0
npm ERR! peer dep missing: @angular/core@^2.3.1, required by ng2-handsontable@0.48.0
npm ERR! peer dep missing: @angular/forms@^2.3.1, required by ng2-handsontable@0.48.0
好的...这是否意味着未安装 angular/common、编译器、核心和表单?这很奇怪,因为 Angular 正在工作。让我检查一下……
C:\Code\path-to-my-project>npm list @angular/common
+-- UNMET PEER DEPENDENCY @angular/common@4.1.3
+-- UNMET PEER DEPENDENCY @angular/compiler@4.1.3
+-- UNMET PEER DEPENDENCY @angular/core@4.1.3
`-- UNMET PEER DEPENDENCY @angular/forms@4.1.3
npm ERR! peer dep missing: @angular/common@^2.3.1, required by ng2-handsontable@0.48.0
npm ERR! peer dep missing: @angular/compiler@^2.3.1, required by ng2-handsontable@0.48.0
npm ERR! peer dep missing: @angular/core@^2.3.1, required by ng2-handsontable@0.48.0
npm ERR! peer dep missing: @angular/forms@^2.3.1, required by ng2-handsontable@0.48.0
npm ERR! code 1
据我所知,它看起来不是。但这是我的 package.json 的依赖部分:
"dependencies":
"@angular/animations": "^4.1.2",
"@angular/common": "^4.1.3",
"@angular/compiler": "^4.1.3",
"@angular/core": "^4.1.3",
"@angular/forms": "^4.1.3",
"@angular/http": "^4.0.0",
"@angular/platform-browser": "^4.0.0",
"@angular/platform-browser-dynamic": "^4.0.0",
"@angular/router": "^4.0.0",
"core-js": "^2.4.1",
"font-awesome": "^4.7.0",
"ng2-handsontable": "^0.48.0",
"primeng": "^4.0.0",
"rxjs": "^5.1.0",
"zone.js": "^0.8.4"
,
我已经在这个目录中完成了很多次“npm install”。并且 Angular 的东西可以工作......
那么发生了什么?我认为在我的 package.json 中使用所有这些 @angular 行,当我 npm install 时,它会安装这些包。
【问题讨论】:
【参考方案1】:按照说明运行后,我已经解决了同样的问题!
npm install npm -g
npm install --save-dev @angular/cli@latest
npm install
npm start
【讨论】:
以上是关于Angular package.json 和未满足的对等依赖项的主要内容,如果未能解决你的问题,请参考以下文章
错误:找不到模块'@angular-devkit/build-angular/package.json'
发生未处理的异常:找不到模块'@angular-devkit/build-angular/package.json'