我正在尝试使用i18n模型作为我的视图标题,但它没有显示正确的标题。只显示变量。
**
**
<mvc:View
controllerName="sap.ui.demo.myFiori.view.Master"
xmlns="sap.m"
xmlns:mvc="sap.ui.core.mvc" >
<Page
title="{i18n>MasterTitle}" >
<List
items="{/SalesOrderCollection}" >
<StandardListItem
type="Active"
press="handleListItemPress"
title="{SoId}" />
</List>
</Page>
**
**
MasterTitle =销售订单 DetailTitle =销售订单
**
**
jQuery.sap.declare( “sap.ui.demo.myFiori.Component”);
sap.ui.core.UIComponent.extend(“sap.ui.demo.myFiori.Component”,{
createContent : function() {
// create root view
var oView = sap.ui.view({
id : "app",
viewName : "sap.ui.demo.myFiori.view.App",
type : "JS",
viewData : { component : this }
});
// set i18n model
var i18nModel = new sap.ui.model.resource.ResourceModel({
bundleUrl : "i18n/messageBundle.properties"
});
oView.setModel(i18nModel, "i18n");
// //使用OData模型连接真实服务 // var url =“/ proxy / http /:/ sap / opu / odata / sap / ZGWSAMPLE_SRV /”; // var oModel = new sap.ui.model.odata.ODataModel(url,true,“”,“”); // oView.setModel(oModel);
// Using a local model for offline development
var oModel = new sap.ui.model.json.JSONModel("model/mock.json");
oView.setModel(oModel);
// done
return oView;
}
});
输出如下![在此处输入图像说明] [1]
在输出中显示MasterTitle而不是Sales Oreders
我想在Xml视图页面的标题中显示销售订单而不是MasterTitle
答案 0 :(得分:0)
我们应该始终使用相对于我们自己的组件的绝对路径。 因为如果在Fiori Launchpad中运行,相对路径将失败。
var oRootPath = jQuery.sap.getModulePath("sap.ui.demo.myFiori");
// Set i18n model
var i18nModel = new sap.ui.model.resource.ResourceModel({
bundleUrl : [oRootPath, "i18n/messageBundle.properties"].join("/")
});
this.setModel(i18nModel, "i18n");
您可以在最后一行放置中断模型,并检查模型是否包含任何数据。