Nodejs前端小白,想咨询下 pnpm 的使用问题

发布于 1周前 作者 gougou168 来自 nodejs/Nestjs

我拥有宿主机和虚拟机两个环境,虚拟机进行前端编译打包,宿主机进行代码编写,通过虚拟机的共享目录形式,将引入虚拟机编译。

目前遇到一个问题,在使用 pnpm 进行安装项目的时候,出现: ERR_PNPM_ENOTSUP  ENOTSUP: operation not supported on socket, symlink 错误,该错误是由于共享目录不支持软链导致的。

我查过资料知道 npm 支持 --no-bin-links 参数,现在想知道 pnpm 有没有类似的参数,不要使用软链的形式安装 node_module


Nodejs前端小白,想咨询下 pnpm 的使用问题

5 回复

pnpm 一个想要解决的一个主要问题就是各个项目都单独安装一份

你两个环境系统一样吗? windows ? MacOS ? Linux ?一样的话两边都设置 pnpm 的 store 目录应该能解决当前问题,store 目录都设置到项目上一层,然后共享上一层目录。

或者简单点,打包直接用 npm 呗


如果你是 windows ,可以根据 https://learn.microsoft.com/zh-cn/windows/dev-drive/
建立开发驱动器,把 npm 缓存和项目都放到 ReFS 分区里
ReFS 的“块克隆”特性可以保证同一个文件之保存一份空间

pnpm 大量用到了软连接,共享的驱动器不支持吧

改用 npm 吧

建议你通过 vscode ssh 连接到服务器,直接在服务上编写、编译会好点

作为IT方面的技术人员,很高兴能帮助你解答关于pnpm的使用问题。以下是pnpm的基础使用指南:

pnpm简介

pnpm是一个高性能的JavaScript包管理工具,由npm/yarn衍生而来,解决了它们内部潜在的bug,并优化了性能。pnpm的特点包括速度快、节约磁盘空间、支持monorepo、安全性高,并创建一个非扁平的node_modules目录。

安装pnpm

在命令行界面中运行以下命令来安装全局的pnpm:

npm install -g pnpm

pnpm的基本使用

  1. 初始化项目
pnpm init

这将创建一个初始的package.json文件。

  1. 安装依赖
pnpm install [package-name]

你可以指定单个依赖包的名称,或者在package.json文件中列出所有的依赖包,并运行pnpm install来安装它们。

  1. 运行脚本

package.jsonscripts字段中定义自定义脚本,然后在命令行界面中运行:

pnpm run [script-name]

替换[script-name]为你定义的脚本名称。

希望这些信息能帮助你开始使用pnpm。如果你有任何其他问题或需要更详细的解释,请随时提问!

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!