here で説明されている i18n を行う Uibinder の方法があります。
次に、GWT i18n に関するこの提案があります。
最初の解決策でいくつかの問題が発生しているため、別の方法を検討しています。両方の方法の長所と短所を知りたいので、どちらを選択すべきかがわかります。
お知らせ下さい。
here で説明されている i18n を行う Uibinder の方法があります。
次に、GWT i18n に関するこの提案があります。
最初の解決策でいくつかの問題が発生しているため、別の方法を検討しています。両方の方法の長所と短所を知りたいので、どちらを選択すべきかがわかります。
お知らせ下さい。
最初の解決策は非常に冗長で、特定のフォルダーにローカリゼーション ファイルを配置する必要があり、悪夢のようなものとして説明されていますが、(ランタイム) 変数を含むテキストをサポートしています。2 番目のソリューションは、メッセージ内の変数をサポートしていませんが、はるかに簡単に使用できます。
2 番目のソリューションは、2 つのユース ケースをサポートします。これは、彼らが両方のソリューションを探す方法です。
平文:
解決策 1:
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
ui:generateFormat='com.google.gwt.i18n.rebind.format.PropertiesFormat'
ui:generateKeys="com.google.gwt.i18n.rebind.keygen.MD5KeyGenerator"
ui:generateLocales="default">
<div><ui:msg key="helloWorld" description="Greeting">Hello, world.</ui:msg></div>
</ui:UiBinder>
解決策 2:
<ui:with field='i18n' type='x.y.client.i18n.MyMessages' />
....
<div><ui:text from="{i18n.helloWorld}" /></div>
ソリューション 1 では、タグ内のテキストがデフォルトのテキストになり、説明は description 属性にあります。MyMessages
2 番目のソリューションでは、それを拡張するインターフェイス クラスに追加しますMessages
。
静的メソッドの引数:
解決策 1:
<th title="Gross receipts">
<ui:attribute ui:name='title' ui:description='Tooltip text for gross column'/>
...
</th>
解決策 2:
<th title="{i18n.grossReceiptsTitle}">...</th>
ソリューション 2 では、引数を渡すなどのメッセージのより高度な使用法はできませんが、いつでもフォールバックして、initWidget
呼び出し後にコンストラクターにそれらを追加できます。