问题标签 [pnpm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
40 浏览

npm - pnpm、工作区依赖以及还支持发布?

我是 pnpm 工作区的新手,正在尝试解决以下问题。

我的演示项目:

      • 通用用户界面
      • 主库

common-ui 是一个基于 Vite 的包,其中包含一些可以被其他包重用的 Vue 组件,在我的示例中,它被 main-lib 使用。

common-ui 在其 package.json 中引用 index.ts

index.ts 正在导出我的 Vue 组件:

现在我可以在 main-lib 中导入这些组件:

这一切都很好,但我也希望能够将我的库发布到 npm 注册表。由于 common-ui 使用的是 Vite,所以可以在库模式下构建:https ://vitejs.dev/guide/build.html#library-mode 。我在 common-ui 中的包需要更改为:

main 不再引用 index.ts 而是仅在运行 vite 命令时才更新的 dist 文件夹。有没有办法让我同时支持发布/版本控制和从 main-lib 中引用实际源代码?

我快速浏览了 Rush.js,但我不确定是否提供了解决方案,我想在继续走这条路之前确定。

0 投票
1 回答
73 浏览

node.js - 如何将依赖项添加到 PNPM 工作区?

我开始使用 PNPM 工作区,我正在努力解决如何将依赖项添加到任何特定的工作区,就像我在纱线运行中所做的那样:

甚至像我在纱线中所做的那样为特定包运行脚本,例如:

PNPM 社区是如何做到这一点的?您真的需要转到工作区package.json文件并手动添加吗?

有一段时间搜索文档没有成功

谢谢!

0 投票
1 回答
53 浏览

powershell - dotenv cli 如何使用“--”(双破折号)运行命令?

我的项目我正在尝试将 dotenv-cli 与 pnpm 一起使用。我在 Windows 上使用 PowerShell 7.2.1。我有api带有脚本包dev的monorepo package.json。首先我尝试的是:

它没有用:

但是当我尝试时:

它运作良好。

正如我所读到--的,表示命令选项的结束,之后只接受位置参数。那么为什么我需要使用它两次才能让我的命令起作用呢?为什么它会这样工作?

0 投票
0 回答
4 浏览

pnpm - 使用 pnpm 安装时 node_modules 文件夹的实际大小和磁盘剩余空间

在我的 Mac 上,当我使用 pnpm 安装并单击文件夹 cmd+i(信息窗口)时,它显示 33.6 MB,但在里面只显示文件夹的链接。

在此处输入图像描述

在此处输入图像描述

我假设实际大小非常小,但是 Mac 在计算磁盘上的剩余空间时是否考虑到了这一点?(Apple Menu -> About this mac -> storage)因为似乎我仍然使用大量空间安装 pnpm,所以可能对硬链接感到困惑?

0 投票
0 回答
9 浏览

npm - @emotion/样式在 PNPM monorepo 中

我在monorepo中使用MUIwith 。由于处理符号链接的方式只有一个实例,因此JEST 中的 ThemeProvider 没有将主题正确地传递给深层子级。@emotion/styledPNPM@emotion/styledPNPM

是否可以仅禁用符号链接@emotion/styledin PNPM?我无法node-linker=pnp在我的存储库中使用。

0 投票
1 回答
19 浏览

node.js - 是否有相当于“纱线工作区”的 pnpm CLI?

我正在使用工作区尝试https://pnpm.io/,但我似乎无法像使用 Yarn 一样在特定工作区中安装包和运行命令。

使用纱线,我可以这样做,例如:

如何使用 pnpm CLI 实现相同的功能?