我正在寻找在Fiori应用程序中更改ShellAppTitle的方法。请参考以下快照中突出显示的部分:
我已经知道解决这个问题的方法,对此我并不感到骄傲:
sap.ui.getCore()。byId(“ shellAppTitle”)。getText()/.setText()
有没有更好的方法来实现这一目标?
答案 0 :(得分:1)
我唯一想到的改进是通过FLP ShellUIService而不是getCore()
方法来实现。原因是如果SAP更改标题文本的ID,则由于其设计目的不是这样,您的代码将中断。
要实施该服务,请首先在您的manifest.json
中声明它:
{
...
"sap.ui5": {
"services" : {
"ShellUIService": {
"factoryName": "sap.ushell.ui5service.ShellUIService"
}
}
}
...
}
然后,您可以通过以下代码在Component.js
中访问它:
// Component.js (the app root component)
...
this.getService("ShellUIService").then( // promise is returned
function (oService) {
oService.setTitle("Application Title"); // also could use .getTitle() first
},
function (oError) {
jQuery.sap.log.error("Cannot get ShellUIService", oError, "my.app.Component");
}
);
...
完整文档可在SAPUI5 SDK
中找到