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)

相关推荐
用户214118326360210 分钟前
dify案例分享-Dify+RSS 聚合 8 大平台实时热点,新闻获取效率飙升 300%
前端
百锦再13 分钟前
Razor编程中@Html的方法使用大全
前端·html
啪叽15 分钟前
JavaScript可选链操作符(?.)的实用指南
前端·javascript
Ian在掘金16 分钟前
bat+python实现easy connect自动连接
前端·python
代码搬运媛18 分钟前
【react实战】如何实现监听窗口大小变化
前端·javascript·react.js
小桥风满袖21 分钟前
Three.js-硬要自学系列30之专项学习环境光
前端·css·three.js
Luckyfif24 分钟前
🤯由 性能指标 散发开来的 Performance API 被问爆了呀
前端·面试·性能优化
咸虾米27 分钟前
在uniCloud云对象内使用unipay的微信退款出现错误“uniPayCo.refund Error: token校验未通过”的解决方案
前端·后端
前端Hardy33 分钟前
HTML&CSS:产品卡片动画效果
前端·javascript
货拉拉技术38 分钟前
货拉拉开源:鸿蒙路由 TheRouter
android·前端·harmonyos