包含多个包含前端逻辑的应用的伞项目。

时间:2017-07-31 10:06:32

标签: elixir phoenix-framework umbrella

我有2个具有共享功能/路由的应用程序。例如,在两个应用程序中都有日记,目标跟踪,睡眠跟踪等,它们以相同的方式工作。还有特定于每个应用程序的路由。在AppA中,用户可以跟踪他们的心情,在AppB中,用户可以查看他们的医生的笔记。

有没有办法让一个伞形项目包含在/apps通用应用程序,AppA和AppB中?每个应用程序都将拥有自己的路由器/控制器/模板等.AppA和AppB将各自要求GenericApp作为依赖项。到目前为止,我只看到了一个包含前端逻辑(web)的应用程序的伞状项目,其他应用程序是包含在其中的库。如何在多个应用程序之间进行路由?我可以采取另一种方法吗?

我在搜索中找到了this question & answer,但这并不是我想要的。它似乎遵循一个前端应用程序的模式,包括在其他库中。

1 个答案:

答案 0 :(得分:4)

是的,您当然可以将“通用”路由拆分为单独的伞状应用,并[Object] 0: Object address: "blablabla" latitude: undefined longitude: undefined __proto__: Object length: 1 __proto__: Array(0) forwardAppA拆分为<{1}}。

使用Phoenix.Router.forward/4功能将AppBAppA的请求转发到共享代码。

例如,这就是exq_ui可以合并到更大的应用程序中的方式:

AppB