现在项目是用 pnpm 建立的 monorepo ,在 packages 中的一个包是用作"生成器"功能的,例如关联的 bin 命令是cli
那我该如何实现在本地的工作空间内任意终端执行cli
就能运行这个包,而不是发布。
1
CHTuring 2023-08-28 16:13:47 +08:00
cli 运行使用一个唯一的命名,运行的时候加上 -r 选项(虽然看起来有点不太好)
|
3
perfectlife 2023-08-29 17:44:38 +08:00
感觉 monorepo 真的是比较痛苦,完全是增加代码以外的复杂度
|
4
qiliangya OP @perfectlife 之前我们用了微前端来解决巨石应用的构建问题,自然就带上了 monorepo , 后面改成了 vite ,习惯了之后就没换了。 有一说一,多项目在复用代码上优势很大,但也有挺多困扰的,例如团队代码权限挺难控制
|
5
perfectlife 2023-08-30 19:14:08 +08:00
@qiliangya 代码复用是优势,同时也像你说的权限管理压根没法弄,除此之外从运维角度上 monorepo 做 cicd 复杂度太高了,项目下有 ios, 安卓,有些服务作为普通 web 要放到独立的 nginx 下 ,有的做成镜像部署到 k8s ,真的是复杂度很多,前端本身就是灵活多变,这样搞的就很不灵活,可能一直需要打补丁。
|