我目前正在将AngularJS实现在Play框架2应用中,效果不错,但在国际化方面遇到了一些问题。我有我的消息文件(messages.en、messages.fr等),在没有Angular的情况下在我的scala模板中正常使用。
现在,我正在使用Angular部分......所以我找到了一个插件(jsMessages)来使用javascript文件中的消息文件,我最终找到了一种使用requireJs和所有这些东西的方法。
因此,现在我将Messages函数(允许获取翻译后的消息)传递给$scope变量。这样我就可以通过{{Messages("myMessage")}}检索消息,但它并不适用于所有情况。
例如,我的一些具有默认值(如占位符,并带有已翻译的消息)。但是Angular不喜欢它,不会评估表达式。
所以,我想知道我该怎么做: • 应该使用Play服务器来使用已在服务器端翻译的字符串对页面进行模板处理,然后将其返回给Angular以将其用作“partials”吗?(在同一模板中混合Scala @指令和Angular ng-*指令) • 还是应该仅使用javascript来翻译字符串,在某些情况下,仅为输入、文本区域和所有这些组件传递额外的变量,其中不能直接使用{{}}?
(我个人更喜欢第一种选择)
现在,我正在使用Angular部分......所以我找到了一个插件(jsMessages)来使用javascript文件中的消息文件,我最终找到了一种使用requireJs和所有这些东西的方法。
因此,现在我将Messages函数(允许获取翻译后的消息)传递给$scope变量。这样我就可以通过{{Messages("myMessage")}}检索消息,但它并不适用于所有情况。
例如,我的一些具有默认值(如占位符,并带有已翻译的消息)。但是Angular不喜欢它,不会评估表达式。
所以,我想知道我该怎么做: • 应该使用Play服务器来使用已在服务器端翻译的字符串对页面进行模板处理,然后将其返回给Angular以将其用作“partials”吗?(在同一模板中混合Scala @指令和Angular ng-*指令) • 还是应该仅使用javascript来翻译字符串,在某些情况下,仅为输入、文本区域和所有这些组件传递额外的变量,其中不能直接使用{{}}?
(我个人更喜欢第一种选择)