发布使用工作区作为依赖项的 NPM 包

Art*_*rix 5 node.js npm monorepo pnpm pnpm-workspace

所以我正在做一个 Monorepo 项目。packages所以我的根目录中有一个目录,其中包含我所有的 npm 包。其中一些包相互依赖,例如在我可能有的 package.json 中

{
    "dependencies": {
        "foo": "workspace:*",
        "bar": "workspace:*",
    }
}
Run Code Online (Sandbox Code Playgroud)

(我使用pnpm)

所以我想知道,如果我发布这些包,所有依赖项是否仍然按应有的方式工作?

谢谢!

Her*_*ine 3

pnpm publish使用(而不是)时,Pnpm 将为您完成所有工作npm publish

它会自动替换:

{
    "dependencies": {
        "foo": "workspace:*",
        "bar": "workspace:*",
    }
}
Run Code Online (Sandbox Code Playgroud)

以当前版本为例:

{
    "dependencies": {
        "foo": "1.5.0",
        "bar": "1.5.0",
    }
}
Run Code Online (Sandbox Code Playgroud)

cf https://pnpm.io/workspaces#publishing-workspace-packages

  • npm 中有等效的功能吗? (3认同)