Sapui5 在控制器中获取语义对象和语义动作

Sapui5 在控制器中获取语义对象和语义动作,sapui5,sap-fiori,Sapui5,Sap Fiori,我正在尝试获取已部署SAPUI5应用程序的语义对象和语义操作。我尝试查看ushell services-URLParsing和LaunchPage,但它似乎没有返回我的语义对象和操作 有人试过这个吗?你可以随时使用 window.location.hash 你可以很容易地解析自己。如果您确实需要启动板代码,您通常可以在此处找到: sap.ushell.services.AppConfiguration.getCurrentApplication().sShellHash 我注意到,当您查看嵌

我正在尝试获取已部署SAPUI5应用程序的语义对象和语义操作。我尝试查看ushell services-URLParsing和LaunchPage,但它似乎没有返回我的语义对象和操作


有人试过这个吗?

你可以随时使用

window.location.hash
你可以很容易地解析自己。如果您确实需要启动板代码,您通常可以在此处找到:

sap.ushell.services.AppConfiguration.getCurrentApplication().sShellHash

我注意到,当您查看嵌入式组件时,它并不总是设置的,但一种简单的方法是:

var-oHashObject=new sap.ui.core.routing.HashChanger();
oHashObject.getHash();

//这将返回语义对象和操作以及路由参数
,到目前为止这对我很有效:

sap.ui.require([//模块延迟访问,而不是使用全局名称访问它们。
“SAP/USEEL/库”,/ /考虑在“声明”中添加“SAP。USELL”:{懒惰:真}。
“sap/ui/core/routing/HashChanger”,
],异步(sapUshellLib,HashChanger)=>{
const fullHash=new HashChanger().getHash();//返回例如“masterDetail display?sap ui theme=sap_fiori_3&/product/HT-1000”
const urlParsing=wait sapUshellLib.Container.getServiceAsync(“urlParsing”);
parseShellHash(fullHash);/**返回例如{
动作:“显示”,
appSpecificRoute:“&/product/HT-1000”,
contextRaw:未定义,
参数:{“sapui主题”:“sap_fiori_3”},
语义对象:“主细节”
} **/
});