如何更新项目中的依赖包而不破坏安装时的依赖关系树?

问题描述 投票:0回答:2

我最近创建了一个基本的 Typescript/React npm 包,供我工作的公司内部使用,因为这是我第一次构建一个包,所以我使用了一个名为

create-react-library
的工具(可在 here 找到)来帮助简化流程的过程。该库使开发和发布我的包变得非常容易,但问题是它最近没有更新,因此一些依赖项已经过时,包括我们其余代码库运行的 React 版本。如果我在
--legacy-peer-deps
上使用
npm install
标志,我可以在主项目中成功安装该包,但这似乎不是一个理想的解决方案。在不破坏依赖关系树的情况下更新包的依赖关系的最佳方法是什么?我尝试检查我的
package.json
,手动将版本号更新到最新版本,然后删除
node_modules
并重新运行
npm install
,但我遇到了几个依赖树冲突并且安装失败。这里最好的方法是什么?

node.js reactjs npm dependencies
2个回答
0
投票

只需设置确切的版本或〜,但没有^


0
投票

如何管理依赖版本

  • 严格指定所有 npm 包的版本。 - 不要使用任何符号
    ^
    ~
    等)-这可能会导致突然出现的错误,因为您可能很容易忽略某些软件包已更新,错过与测试相关的功能,未能通知 QA关于它,并因此将错误交付到生产中。
  • 使用dependabot

更新 npm 包版本

  • 不要急于升级到主要版本(尤其是在像 Next.js 这样的大型框架的情况下),之后等待至少 1-2 个次要/补丁版本(除非需要并且我们承担风险)。
  • 更新版本时,请仔细阅读软件包的 Changelog 以避免重大更改。
  • 测试与更新包相关的所有功能。
© www.soinside.com 2019 - 2024. All rights reserved.