我有一个项目,其根目录为以下简化的 package.json
文件:
package.json
{
"name": "parent-project",
"dependencies": {
...
}
}
在我们称之为 child-project
的子文件夹中,另一个package.json
居住地:
子项目/package.json
{
"name": "child-project",
"dependencies": {
...
}
}
Some code that I depend on使用命令npm --prefix ./child-project install
在child-project
中安装依赖项。然而,这总是会产生改变 child-project/package.json
的不良副作用。像这样:
{
"name": "child-project",
"dependencies": {
...
"parent-project": "file:.." // <- I don't want this!
}
}
当我执行cd ./child-project && npm install
时一切都很好,child-project/package.json
保持不变,所以我的预感是它与 --prefix
有关。但有关 --prefix
的文档非常晦涩难懂。
有没有办法禁用此行为并防止 NPM 更改 child-project/package.json
?
最佳答案
--prefix
似乎存在一些问题。
但是,当我使用具有子包的不同模块进行测试时,我没有发现任何问题。
因此,according对于一位 npm 贡献者来说,它将在未来的版本中被重构或删除,这意味着至少目前它不是使用它的最佳选择。因此我建议您采用传统方式并避免使用 --prefix
。
I think we're gonna close this as a wontfix as --prefix is not the best flag to be promoting. We do eventually want to refactor or remove it but for now we should at least not be promoting it.
关于node.js - 如何禁用 `npm install --prefix` 的本地包依赖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74276339/