【发布时间】:2019-04-16 18:18:46
【问题描述】:
我在捆绑依赖项时遇到问题。
我的库包是 @angular/material 组件的包装器。
我惊讶地发现,无论我在哪里安装我的库包,都要求安装 @angular/material,否则我得到一个错误。
必须有更好的方法来做到这一点,对吗?我希望我的包是独立的,并在安装时“包含”角度/材料。
我读到将以下内容添加到库的 package.json 中
"bundledDependencies": [
"@angular/material"
]
应该解决这个问题,但它似乎没有工作,或者至少必须有另一个步骤,因为我在安装我的包时看到这个错误:
缺少捆绑的依赖项“@angular/material”。这应该是 报告给包维护者。
这个错误确实让我听起来像是遗漏了一些东西,这将按我的预期工作。我错过了什么?
我无法找到有关该错误的任何信息。
我们希望强制安装依赖项以保持我们的库“模块化”和自包含。换句话说,我们只想安装我们的库并自动获取它需要的所有依赖项。
我们不想依赖来自 peerDependencies 的警告消息。
这似乎是一种可能的模式,谁能解释一下 bundledDependencies 的意义
【问题讨论】:
-
听起来你的
bundledDependencies工作了????我需要做同样的事情,但不确定构建步骤是什么。您能否将它们作为更新部分放在您的问题或回复中? -
从 peerDependencies 中得到警告信息的地方?如果我将 3º 方依赖项(例如“@fortawesome/fontawesome-free”:“^5.15.1”)添加到库的 package.json,当我在其他主机中使用库时,我不会在控制台上收到任何警告消息 -应用
标签: angular npm angular-material angular-cli