我目前正在 Play framework 2 应用程序中实现 AngularJS,到目前为止效果很好,但我在国际化方面遇到了一些问题。我的 scala 模板中有我通常在没有 Angular 的情况下使用的消息文件(messages.en
,messages.fr
等)。
现在,我正在使用 Angular 部分...所以我找到了一个用于jsMessages
Play 框架的插件(requireJs
所以,现在我Messages
在变量中传递函数(允许获取翻译的消息)$scope
。这样我就可以用 检索消息{{Messages("myMessage")}}
,但它并不适用于任何地方。
例如,我的一些<input>
有默认值(如占位符,也有翻译的消息)。但是 Angular 不喜欢它并且不计算表达式。
所以,我想知道我该怎么做:
我应该使用 Play 服务器来模板页面,其中包含已经在服务器端翻译的字符串,这些字符串将返回给 Angular 以将它们用作“部分”?(在同一个模板中混合使用 Scala
@
指令和 Angular指令)ng-*
还是我应该只使用 javascript 来翻译字符串,并且在某些情况下,将一个额外的变量传递给范围,仅用于输入、textarea 和所有这些
{{}}
不能直接使用的组件?
(我个人更喜欢第一个选项)