我们正在计划三个类似的 Vue 项目。我们已经知道我们将能够在所有这些中重用大量代码(尤其是 vue SFC 和简单的 js 辅助函数),并且我们正在寻找一种在它们之间共享代码的适当方法。
不幸的是,项目的范围相当不同,monorepo 是 不是 由于其在读/写权限和可见性管理方面的限制而成为一个选项。因此,我们计划将可重用部分作为单独的 repos(以及最有可能的私有(private) npm 包)处理,这似乎是一种简单的方法。 但是,问题是:我们如何创建一个方便的设置,以便我们能够在其中一个父项目的范围内处理共享组件?
项目 A [project-repo-a]
项目 B [project-repo-b]
在我们的 PHP 项目中,有一个简单的解决方案,我们只需要通过 composer 使用具有 prefer-source 选项的可重用部分,该选项提供完整的 git 存储库,可以直接在父应用程序中使用。但是,据我们了解,npm 或 yarn 中没有 prefer-source 的东西。那么我们如何才能实现所需的设置呢? (或者我们是否忽略了这种设置的主要缺点?)
我们已经研究/考虑了以下内容(没有找到合适的方法):
要明确这一点:我们是 不是 询问口味问题,这些方法中的一种或另一种是否是“最好的”。我们觉得他们都不是正确的。问题是:我们是否忽略了一种技术上干净且经过验证的方案,使用 npm、yarn 或其他包管理器/依赖管理解决方案?
最佳答案
Git X-Modules是一种工具,旨在完全按照您的要求进行操作。这里是 a video这解释了它。然而,它是非常新的,因此不能真正被认为是“经过验证的”:-)
但是,如果您考虑尝试一下,我们很乐意听到您的反馈!
(正如你可能从上一句中猜到的,我是开发团队的一员。)
关于vue.js - 如何在没有 monorepo 的情况下在多个 vue 应用程序中组织代码(组件)共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66500778/