如何在SAPUI5中从OData服务创建i18n?

时间:2017-02-18 13:01:20

标签: sapui5

我想摆脱SAPUI5个应用程序中的i18n文件。我开发了一个OData服务,提供所有翻译并从i18n中删除manifest.json模型。我也根据i18n中的OData服务创建了Component.js模型。但我不知道为什么这些元素不会绑定到我的i18n模型的数据。

以下是我创建Odata模型的代码:

oDataModel.read("/TranslationConfigSet", {
            async: false,
            filters: aFilter,
            success: function(oData, response) {
                var aI18n = {};
                var results = oData.results;
                for (var i = 0; i < results.length; i++) {
                    aI18n[results[i]["ZStringKey"]] = results[i]["ZTranslation"];
                }
                var oI18nModel = new JSONModel(aI18n);
                _this.setModel(oI18nModel, "i18n");
            },
            error: function(oError) {

            }
        });

这段代码放在我的Component.js文件里面,在xml视图文件里面我有一些像这样的代码:

text="{i18n>TESTSTRING}"

虽然TESTSTRING存在于我的数据和我的数组中。

1 个答案:

答案 0 :(得分:1)

您似乎错过了绑定语法中的斜杠(/)。 JSON模型的binding syntax与资源包语法不同。所以你的绑定应该是

x[i, :, :, :]