我们正在使用 yarn 工作区,它按预期进行开发。
这是我们的目录结构
我们使用 webpack 模块联合来在应用程序之间共享代码,同时还对 Shared 目录中的代码使用 webpack 别名(我们希望一些代码捆绑在每个应用程序中)。
所有这些都适用于开发,因为 yarn 工作区可以很好地管理依赖项。
我们希望单独部署我们的所有应用程序,但我们在解析 Shared 目录的 node_modules 依赖项时遇到问题。 Shared 目录中的依赖项从父级的 node_modules 中选取,而 App1 目录中的依赖项从 App1 中的 node_modules 或 Parent
对于 App1 的部署,我们有以下选项。
解决方案 1。
a) 在父级安装所有依赖项(这将很难知道哪些依赖项属于哪个 App)。这也将强制 App1 构建在运行时服务器上的 Parent 内(对于 ssr,我们不捆绑 node_modules)。
b) 通过取App1 中的package.json 和Parent1 中的package.json 中的依赖项的交集,动态生成Parent 中的package.json >
解决方案 2。
在 App1 和 Parent 中安装所有依赖项(这将捆绑重复的依赖项,不适用于我们使用 React 的用例)
解决方案 3。
在 App1 中安装所需的依赖项,并在 Parent 中的 node_modules 中为 Shared
中所需的依赖项创建符号链接这些解决方案似乎都不理想。请建议是否有其他可能的解决方案来解决此问题,如果没有,您在上述共享解决方案中推荐的解决方案是什么。