在AngularJS $ scope中访问Play Scala变量

时间:2015-11-04 20:08:27

标签: javascript angularjs scala playframework-2.0

我尝试过在StackOverflow上建议的一些方法,但仍然无法在我的Javascript $范围内访问Play Scala变量。 HTML文件中的初始化行为:

@(playVariable: String)(implicit request: play.api.mvc.Request[Any])

我可以通过执行以下操作来访问 HTML标记之间的值作为屏幕文本:

<h2>Play value: @playVariable</h2>

但是,我不知道如何将此变量设置为$scope值...另外,我不认为Play @在HTML标记中有效,所以{{ 1}}在event.currentTarget.scalaVal中结束undefined

$scope.angularFunction

我需要访问<button type="button" ng-click="angularFunction(parameter);" scalaVal=@playVariable>Click!</button> 中的@playVariable才能进入后端HTTP调用...我该如何做到这一点?

1 个答案:

答案 0 :(得分:0)

我们采用的方法是在窗口中设置一些全局变量,从Play生成HTML,然后从Angular代码访问全局变量。是的,全球性一般都很糟糕,但有时它更容易。我们的Angular代码是单页应用程序,我们不想修改Play方面的模板,它看起来就像你想要做的那样。

如果您不想这样做,而是想在播放前修改Play侧的Angular模板,您可以尝试在函数调用中传递play变量,例如:

ng-click=angularFunction(parameter, @playVariable)"