在Gwt中,我们可以在属性文件中设置消息常量,如
passWordErr={0} must contain Upper case
passWordBox=Please enter {0} Here. {0} must contain Upper case
在MyMessages界面中,我们有:
public interface MyMessages extends Messages{
String passWordErr (String field);
String passWordBox (String field);
}
如您所见,在属性文件中,我们获得了重复的文本" {0} must contain Upper case
"。因此,如果我们改变它,我们需要改变2个地方和这是不好的。
所以我的问题是:
属性文件中的Key String是否可以成为另一个Key String(GWT)中的变量?
这样的事情:
passWordErr={0} must contain Upper case
passWordBox=Please enter {0} Here. + passWordErr({0})
答案 0 :(得分:2)
不,你不能这样做。更重要的是,没有必要这样做。
在您的示例中,而不是
passWordErr={0} must contain upper case
passWordBox=Please enter {0} here. {0} must contain Upper case
应该是
passWordErr={0} must contain upper case.
passWordBox=Please enter {0} here.
然后,当您需要显示消息时,您可以简单地连接两个消息:
Window.alert(myMessages.passWordBox("password") + " " + myMessages.passWordErr("password"));