설명한대로 i18n을 수행하는 Uibinder 방식이 있습니다. here
그리고 나서 GWT i18n에 대한 제안은 this입니다.uibinder에 대한 대안 I18n
첫 번째 해결 방법에 몇 가지 문제가 있으므로 대안을 고려하고 있습니다. 두 방법의 장점과 단점을 알고 싶습니다. 그래서 무엇을 선택해야할지 압니다.
알려주세요.
설명한대로 i18n을 수행하는 Uibinder 방식이 있습니다. here
그리고 나서 GWT i18n에 대한 제안은 this입니다.uibinder에 대한 대안 I18n
첫 번째 해결 방법에 몇 가지 문제가 있으므로 대안을 고려하고 있습니다. 두 방법의 장점과 단점을 알고 싶습니다. 그래서 무엇을 선택해야할지 압니다.
알려주세요.
첫 번째 해결 방법은 매우 자세한 정보이므로 특정 폴더에 현지화 파일을 넣어야하며 a kind of a nightmare으로 설명되어 있지만 런타임 변수가있는 텍스트는 지원됩니다. 두 번째 솔루션은 메시지의 변수를 지원하지 않지만 훨씬 쉽게 사용할 수 있습니다.
두 번째 솔루션은 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 : 솔루션 1 태그 안의 텍스트에서
<ui:with field='i18n' type='x.y.client.i18n.MyMessages' />
....
<div><ui:text from="{i18n.helloWorld}" /></div>
것 기본 텍스트가되고 description은 description 속성에 있습니다. 두 번째 솔루션에서는 Messages
을 확장하는 인터페이스 클래스 MyMessages
에 추가 할 것입니다.
static 메소드 인수 :
해결 방법 1 :
<th title="Gross receipts">
<ui:attribute ui:name='title' ui:description='Tooltip text for gross column'/>
...
</th>
해결 방법 2 : 인수를 전달과 같은 메시지
<th title="{i18n.grossReceiptsTitle}">...</th>
모든 고급 사용이 솔루션이 불가능하지만, initWidget
호출 후에 항상 생성자에 다시 추가 할 수 있습니다.
UiBinder I18N은 메시지 안에 위젯이있을 때 정말 빛납니다. ' 으로 되도록 이라고 밝혔다. 그리고'ui : baseMessagesInterface'는 소위 "솔루션 2"와 거의 비슷한 악몽에 지나지 않습니다. –