在应用之间共享本地库并将它们包含到最终构建中

问题描述

我的应用程序有以下文件夹结构:

root
|_ api-server  //React app,written in TypeScript; uses Parcel as bundler
|_ web-ui  //Express app also written in TypeScript
|_ libs //interfaces and utility functions shared between web-ui and api-server
|_ build 
   |_ public  //web-ui compiles and bundles in here,later served by index.js
   |_ src   //files imported by index.js
   |_ index.js  // compiled api-server app

来自通过 yarn add file:[PATH_TO_PACKAGE] 共享的库的包

我的想法是我可以构建一个 git 存储库并将其直接推送到 Heroku。 heroku 在 package.json 中查找并安装所有依赖项。问题当然是 Heroku 不知道从 libs 本地安装的包。

所以我正在寻找这个问题的解决方案,也许有一种方法可以让打字稿在构建中包含特定的包?也许 WebPack 可以从 api-server 创建一个可以在 Heroku 上运行的包?我尝试将 api-server 与 Parcel 捆绑在一起,但它阻塞了来自 node_modules 的其他库。

在 monorepo 中组织开发的整个方式感觉很笨拙,例如每次我更新库中的某些内容时,我都必须在 api-serverweb-uibuild 中手动重新安装它。从本质上讲,我想要实现的是:在前端和后端之间共享代码;并轻松构建并将其部署到 Heroku。那么也许有一种正确方法来做到这一点?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)