如何在 NPM 工作区 mono-repo 中使用包的发布版本

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

我有一个 Node Typescript Mono-repo,里面有 2 个包。一个包是一个发布到 npm 工件的库。另一种套餐是加急服务。

我希望服务将库列为依赖项:“xyz-library”:“^1.0.0”,

我遇到的问题是在服务包中使用和导入库时,它似乎是引用或安装库的最新代码到node_modules包中,而不是获取版本1.0.0。例如,如果我删除了 api 中引用的库中的一个文件,现在我会收到导入错误(我不应该这样做,因为技术上该文件应该仍然存在于版本 1.0.0 中)。

这似乎是 NPM 工作区的默认配置,并且使用链接连接代码按预期工作。但是我想知道是否可以将服务配置为使用库的已发布版本?

node.js npm npm-install npm-package npm-workspaces
1个回答
0
投票

我遇到了同样的问题,并且我无法使用 npm 工作区找到好的答案。我尝试了 --install-strategy 标志的所有选项,但它并没有改变这种行为。

据我所知,您可以执行以下操作之一:

  1. 使用不同的包管理器,例如pnpm或yarn。
  2. 停止使用工作区。依赖项将按照指定的方式安装在指定它们的 package.json 文件旁边。
  3. 按原样接受这种行为。
© www.soinside.com 2019 - 2024. All rights reserved.