私は現在、Play フレームワーク 2 アプリケーションに AngularJS を実装しています。これまでのところ問題はありませんが、国際化に関していくつかの問題に直面しています。scala テンプレートで Angular なしで通常使用していたメッセージ ファイル ( messages.en
、messages.fr
など) があります。
今、私はAngularパーシャルを使用しています...だからjsMessages
、Playフレームワークがjavascriptファイルでメッセージファイルを使用するためのプラグイン( )を見つけました。最終的にそれを使用する方法を見つけましたrequireJs
。
Messages
そのため、変数に関数 (翻訳されたメッセージを取得できるようにする) を渡してい$scope
ます。そうすれば、でメッセージを取得できますが、{{Messages("myMessage")}}
どこでも機能するとは限りません。
たとえば、私のものに<input>
はデフォルト値があります (プレースホルダーのように、翻訳されたメッセージもあります)。しかし、Angular はそれを好まず、式を評価しません。
だから、私は何をすべきか疑問に思っています:
Play サーバーを使用して、サーバー側で既に翻訳された文字列を含むページをテンプレート化する必要があります。これは、「部分」として使用するために Angular に返されますか? (同じテンプレートにScala
@
ディレクティブと Angularディレクティブを混在させる)ng-*
または、javascript のみを使用して文字列を変換し、場合によっては、
{{}}
直接使用できない入力、テキストエリア、およびこれらすべてのコンポーネントに対して、追加の変数をスコープに渡す必要がありますか?
(私は個人的に最初のオプションを好みます)