如何在 SAPUI5 上的 i18n.properties 文件中包含 .properties 文件?

Posted

技术标签:

【中文标题】如何在 SAPUI5 上的 i18n.properties 文件中包含 .properties 文件?【英文标题】:How to include a .properties file in i18n.properties file on SAPUI5? 【发布时间】:2021-03-15 05:38:04 【问题描述】:

环境

框架:SAPUI5 V1.38.39

问题

好吧,这个问题可能看起来很愚蠢,但它如下所示: 我有一个包含大量文本的应用程序,它会生成非常大的 i18n 文件,这就是为什么我想将它们分成几个文件以使文件更干净。例如:

一个 i18n.properties,包括 i18n_food.properties、i18n_ingredient.properties 等。 i18n_en.properties,包括 i18n_food_en.properties、i18n_ingredient_en.properties 等。 一个 i18n_de.properties,包括 i18n_food_de.properties、i18n_ingredient_de.properties 等。 i18n_fr.properties,包括 i18n_food_fr.properties、i18n_ingredient_fr.properties 等。

尝试

我尝试的是使Apache .properties files含义:

#i18n.properties
include = i18n_food.properties
#i18n_food.properties
recipeSelection = A selection of recipe
recipeDetail = Recipe details

但它不起作用,在视图中,我与“i18n>recipeDetail”绑定,而不是显示“配方详细信息”,而是显示“recipeDetail”

【问题讨论】:

_food 不是有效的语言环境。它需要一个描述语言环境的后缀,例如 _de 表示德语。在此处阅读更多信息openui5.hana.ondemand.com/topic/… @PetarD。抱歉,问题不在于如何切换语言,而是如何在属性文件中包含另一个 .properties 文件,以便拥有多个 .properties 文件(例如每页 1 个),而不是让 1 个 .properties 文件产生数千行 【参考方案1】:

检查清单文件,是否更新了新的 i18n 文件名

"models": 
        "i18n": 
            "type": "sap.ui.model.resource.ResourceModel",
            "settings": 
                "bundleName": "xxxx.xxxx.i18n.i18n",
                "bundleName": "xxxx.xxxx.i18n.i18n_food"
            
        
    

【讨论】:

感谢您的回复@santhosh,我只是尝试但它不起作用,然后所有 i18n 文件都不起作用。我也在文档中看到了 enhanceWith 我应该定义它吗? @SylwekFr enhanceWith 在 1.38.x 中不可用。我想再次强烈建议升级您的 UI5 版本,因为支持将在今年结束,并从当前的改进和安全修复中受益。 UI5 向后兼容。 您好@BoghyonHoffmann,再次感谢您的回复,很遗憾我无法更改版本 @SylwekFr 我知道这不是那么简单:P 只是想再次强调一下,这是多么重要

以上是关于如何在 SAPUI5 上的 i18n.properties 文件中包含 .properties 文件?的主要内容,如果未能解决你的问题,请参考以下文章

sapui5 walkthrough 21-25

Sapui5:如果有oData参数,如何将oData服务绑定到SAPUI5表

SAPUI5 如何在语义详细视图中插入片段或 xmlview

如何从另一个函数触发选择事件 [SAPUI5]

SAPUI5 DatePicker 如何在可以通过日历更改日期时禁止手动/键盘输入?

SAPUI5中如何实现数据绑定?