属性文件中的Key String是否可以成为另一个Key String(GWT)中的变量?

时间:2014-03-20 05:40:09

标签: gwt gwtp

在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})

1 个答案:

答案 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"));