pnpm在monorepo架构下不能引用其他模块的问题

一、研究背景

monorepo架构项目目录结构:

bash 复制代码
- common
  - index.ts
  - ...
- main
  - index.ts
  - ...
- web
  - vue-demo
  - ...

pnpm在monorepo架构下使用以下命令

bash 复制代码
pnpm -F main add common
# or
pnpm --filter main add common

并不能在main/index.ts中使用common/index.ts模块下封装好的axios,一直从远程下载common模块。

二、解决方法

后来参考了这篇文章才知道,pnpm版本在 9.0 之后 pnpm,修改了

的默认值为 false。我们需要开启该属性,在安装依赖时优先在本地链接,而不是从 registry(远程) 中下载。

在根目录新建.npmrc并配置以下内容:

bash 复制代码
 link-workspace-packages=true

再执行以下命令即可

bash 复制代码
pnpm -F main add common
# or
pnpm --filter main add common

引用效果如下图所示

三、参考文献

一文吃透 pnpm 如何使用 workspace 构建 monorepo,与 npm、yarn 的用法对比(pnpm 9.x 内部安装依赖问题 link-workspace-packages) | kshao-blog - 前端知识记录 (ksh7.com)

相关推荐
范特西.i8 分钟前
QT聊天项目(6)
前端
a11177614 分钟前
水体渲染系统(html开源)
前端·开源·threejs·水体渲染
程序员小李白40 分钟前
CSS 盒子模型
前端·css·html
Zzz不能停1 小时前
单行 / 多行文本显示省略号(CSS 实现)
前端·css
xiaoxue..1 小时前
TailwindCSS:从“样式民工”到“UI乐高大师”的逆袭
前端·css·ui
Anastasiozzzz3 小时前
阿亮随手记:动态条件生成Bean
java·前端·数据库
mclwh3 小时前
关于React-Konva 报:Text components are not supported....错误的问题
前端·react.js
SuperEugene4 小时前
错误处理与 try/catch:真实项目里应该捕什么错?
前端·javascript·面试
Amumu121384 小时前
CSS引入方式
前端·css
我是Superman丶4 小时前
【Demo】✋ 数字手势识别 Html
前端·html