在 Lerna monorepo 中使用助手
Posted
技术标签:
【中文标题】在 Lerna monorepo 中使用助手【英文标题】:Using helpers in a Lerna monorepo 【发布时间】:2020-07-30 16:12:01 【问题描述】:我有一个 Lerna 驱动的 monorepo,其中包含发布到 NPM 的各种包。其中有各种帮助函数,它们位于 repo 的根目录并由几个包共享。
我遇到的问题是,当每个包都使用 Babel 构建时,转译的代码使用 require
来获取这些帮助程序。显然这不起作用,因为当一个包发布时,它需要完全自包含——那些助手不在那里。
有没有办法解决这个问题?我不想在包之间复制助手。
当使用lerna bootstrap --hoist
时,我仍然遇到同样的问题。
【问题讨论】:
【参考方案1】:我看到的最简单的解决方案是创建一个在使用 lerna publish 时不发布的辅助工作区。
您将能够将此“帮助”工作区设置为每个工作区的依赖项,从而避免代码重复。
【讨论】:
以上是关于在 Lerna monorepo 中使用助手的主要内容,如果未能解决你的问题,请参考以下文章
通过 git URL 从 lerna 管理的 monorepo 安装包
在 Netlify Monorepo (Yarn Workspace/Lerna) 上使用 UI 库作为 Web 应用程序的依赖项
如何在不发布的情况下在 lerna monorepo 中构建 docker 镜像
开发人员是不是应该能够在他们的开发环境中从 lerna monorepo 创建 docker 工件?