点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我有两种型号的i18n:
- i18n_en.properties为英语
- i18n_ar.properties阿拉伯语
我的目标是尽管使用网站的语言,但仅获取英语的对应文本。
以下功能根据网站语言获取文本。
fGetText:function(sText){
var oBundle = this.getView()。getModel(" i18n")。getResourceBundle();
返回oBundle.getText(sText);
}
示例:
fGetText(country.name);
//打印"国家名称"(基于语言)。
我尝试更改为获取模型i18n_en而不是像这样的所有模型:
var oBundle = this.getView()。getModel(" i18n_en")。getResourceBundle();
但是,它总是根据网站语言的语言来调用文本(如果网站是阿拉伯语,则称为阿拉伯语文本,否则为英语)。
有没有一种方法可以调用特定语言的文字?
感谢您的帮助!
使用ResourceBundle.create创建新的ResourceBundle,可以指定要使用的语言环境或特定属性文件: https://sapui5.hana.ondemand.com/#/api/module:sap/base/i18n/ResourceBundle%23methods/Summary a>
我相信您可以在manifest.json中指定具有相同属性的模型,这是更好的选择。
哦,当然。†使用模型显然可以使您处于更好的位置。
与Ethan相比,我过去曾使用过资源模型。
创建一个新的资源模型,如下所示:
var i18nModel = new sap.ui .model.resource.ResourceModel({bundleName:" namespace.app name.i18n.i18n",bundleLocale:" nlNL"})
Bundlelocale将加载该语言的i18n。
使用以下新资源模型更新i18n模型:
this.setModel(i18nModel," i18n")
有关资源模型的更多详细信息: https://ui5.sap.com/#/api/sap.ui.model.resource.ResourceModel
一周热门 更多>