monorepo项目子包和子包之间互相引用注意事项

问题一、在子包之间互相引用函数时,如果只一味的配置tsconfig中path配置,是不行的,需要pnpm去下载workspace下子包建立软连接才是正解。

维度 tsconfig paths workspace 依赖
作用对象 TypeScript 编译器 Node / bundler / runtime
是否影响运行 ❌ 不影响 ✅ 真实依赖
是否生成 node_modules ✅(软链接)
是否有版本关系
是否可发布
是否符合 npm 生态

如果你只配了 paths:

  • TS 编译 ✔️

  • IDE 提示 ✔️

  • Node 运行 ❌(找不到模块)

除非你:

  • 用了 webpack / vite alias

  • 或 ts-node + tsconfig-paths

  • 或打包时重写 import

2️⃣ 打包器需要额外配置

你必须同步配置:

javascript 复制代码
// vite.config.ts
resolve: {
  alias: {
    '@shared': path.resolve(__dirname, '../shared/src')
  }
}

否则:

  • dev ✔️

  • build ❌

相关推荐
用户9850335932826 分钟前
OpenLayers 热力图从原理到 Vue 组件一键接入
前端
颜酱28 分钟前
01 | 骨架搭建:FastAPI + Vue 跑通第一个 SSE 流式问答
前端·人工智能·后端
hoLzwEge34 分钟前
解码 IDE 智能提示:jsconfig.json 辅助开发全攻略
前端·前端框架
leoZ23136 分钟前
记忆系统与 Agent 定制完全指南(四):自定义 Agent 开发(一)
前端·chrome
慧一居士41 分钟前
Element Plus 按需引入的配置使用说明和完整示例
前端·vue.js
程序员黑豆42 分钟前
鸿蒙应用开发实战:从零学会自定义组件
前端·华为·harmonyos
leoZ2311 小时前
记忆系统与 Agent 定制完全指南(三):记忆的检索与使用
前端·chrome
遇乐的果园1 小时前
前端学习笔记-vue状态管理优化
前端·笔记·学习
GIS阵地2 小时前
QgsSingleBandPseudoColorRenderer 完整详解(QGIS 3.40.13 C++)
开发语言·前端·c++·qt·qgis
刘较瘦_3 小时前
AI 开发中的 Git Submodule 父子仓库模式:前后端分仓管理与协作实践
前端·github