【发布时间】:2021-07-26 07:49:52
【问题描述】:
我有一个几年前的共享组件库项目(只是说它已经运行了一段时间)。我想用 Angular Material 组件替换一些自定义组件。但是,当我将 NgMat 添加到库项目时,尝试在单独的项目中使用它时出现错误。
ERROR in The target entry-point "my library project" has missing dependencies:
- @angular/material/form-field
- @angular/material/datepicker
项目 package.json 有:
...
"peerDependencies": {
"@angular/common": "~10.2.4",
"@angular/core": "~10.2.4",
"@angular/forms": "~10.2.4",
"@angular/material": "^10.2.4",
...
而主 package.json 文件有:
...
"dependencies": {
"@angular/animations": "~10.2.4",
"@angular/cdk": "^9.2.4",
"@angular/common": "~10.2.4",
"@angular/compiler": "~10.2.4",
"@angular/core": "~10.2.4",
"@angular/forms": "~10.2.4",
"@angular/material": "^10.2.4",
...
我还按照此处Dependency @ng-bootstrap/ng-bootstrap must be explicitly whiteliste 的建议将@angular/material 列入ng-package.json 的白名单,同时在项目的依赖项中使用@angular/material 而不是peerDependencies。
【问题讨论】:
-
这可能无法解决问题,但
@angular/cdk不应该在版本10.2.4上吗?