将一个Angular2应用程序导入到Phoenix框架中

我目前正在做两个相关的项目。 一个是基于Phoenix的网站和API,另一个是Angular2应用程序,其中使用了由Phoenix提供的API。 我现在想让Phoenix项目使用Angular2应用程序。 问题是我不知道最好的方法是什么。 我对Angular2和NPM非常陌生,对基本用法之外的实际工作知之甚less。 这些是我能解决我的问题的方法:

  1. 将Angular2项目纳入凤凰项目,使其成为一个项目。 我不知道如何做到这一点,但我可能会通过试验和错误,因为都使用Node.js所以它应该是可行的。

  2. 将Angular2项目发布到NPM,然后将其导入到Phoenix项目中。 凤凰方面需要多less工作? 是否会像在Angular2项目中运行index.html一样? 我需要一些Angular2“shell”吗?

  3. 运行Angular2应用程序作为它自己的东西,并通过凤凰网站链接到它。

将其作为节点模块导入听起来像是最好的方法,但可以为完整的应用程序完成,还是仅用于支持库?

我不确定这是否是“正确”的方式,但是这是我最后做的:

我把我的整个Angular2项目编译成app.js,vendor.js和common.js,然后把它们全部移到web / assets /。 之后,我简单地创build了一个新的html,并引用了有问题的文件。

最大的挑战是find一些将它们编译成这三个文件。 我结束了使用精简版的: https : //github.com/AngularClass/angular2-webpack-starter

我想你会想利用brunch.io,与凤凰船舶来处理你的前端依赖。 有骨架,实质上是模板创build不同的前端configuration,但我没有看到一个提供angular2。 在这种情况下,我会说使用鲍尔安装你想要的JS包,即:

bower install -S angular2 

有了这个,你可以使用早午餐作为一个处理pipe道,它将处理缩小,linting等,你仍然在“推荐”的方式来pipe理凤凰城前端资产pipe理。