Angular2 + Scala Play2?

时间:2016-02-13 09:24:12

标签: scala angular playframework playframework-2.0

我对网络开发领域有些新意。我正在调查Play2,我正在努力理解,你需要某种JS前端框架来配合Play2和Scala吗?

我注意到Play2有一个模板引擎,但它似乎在服务器上生成HTML并将其发送到浏览器。这是否意味着需要像Angular2这样的JS前端无关紧要?或者仍然有理由在Play2应用程序中使用Angular2?什么情况会有意义?为什么?

4 个答案:

答案 0 :(得分:4)

我有使用Playular 2和AngularJS的经验(目前正在重写Angular2的前端)。
我只将Play 2(scala)用于RESTful JSON后端,这对于此目的非常有用,我将Angular用于单页面应用程序前端。我发现这个组合很棒。

我的项目托管在GitHub上,您可以查看here

根目录中有三个目录:

  • restful 所有后端内容,用scala编写,使用Slick for DB, 利用Play evolutions和所有其他东西。
  • 使用AngularJS代码
  • angularjs-client-deprecated 。我使用angular-resource来调用后端。
  • 使用Angular2代码
  • 客户端。到目前为止,除了我的实验之外什么都没有,但是我已经用安全令牌编写了一个简单的服务进行身份验证。

总而言之,到目前为止,我已经开发了近2个月的项目,主要是为了学习Scala和AngularJS(现在是Angular2)。

如果您计划使用JS框架作为前端,我建议您仅使用Play2 作为RESTFul Json后端。在这种情况下,我没有看到使用Play2 html模板引擎的原因。

答案 1 :(得分:3)

Play更多的是关于服务器端模板,如果您使用Angular,则不是很有用。它可以完成,但它带来了一些开销。我过去和Scalatra合作过,对我来说效果很好。 http://scalatra.org/

其他选项包括Spray,它与外部非常相似,但在内部使用Akka并使用非阻塞I / O,类似于Play!
http://spray.io/

答案 2 :(得分:1)

对于角度来说,最好使用简单的rest / http api(如Akka-IO)或喷洒数据和其他东西。与Angular的游戏不太相关。

答案 3 :(得分:1)

正如其他人所指出的,Play2并不是构建响应式网站的最佳选择。我有一个种子项目可以帮助你开始使用Akka Http和Angular 5 ......已经配置为在单个web dyno中部署到Heroku。

https://github.com/jdschmitt/akka-angular-heroku

检查出来。我希望它可以帮助任何人登陆这里,寻找一种方法来管理简单项目的单个仓库中的后端和前端。