如何在 SAPUI5 中从实用程序查看目标元素



我想从实用程序中的函数中显示/隐藏视图中的元素。

我试过了,

// check if editing Promotion
if(oUtil._sId === "Promotion"){
var getActiveView = this.getView().byId("mainPageId");
getActiveView.byId("btnSaveEditPromotions").setVisible(true);
getActiveView.byId("btnCancelEditPromotions").setVisible(true);
}

还有

// check if editing Promotion
if(oUtil._sId === "Promotion"){
var getActiveView = sap.ui.getCore().getView().byId("mainPageId");
getActiveView.byId("btnSaveEditPromotions").setVisible(true);
getActiveView.byId("btnCancelEditPromotions").setVisible(true);
}

但两者都不起作用。oUtil.sId等于"Promotion",它在getActiveView上失败

最好的办法是使用 json 模型来隐藏/显示视图上的元素。当您导航到视图时,触发 sap.ui.getCore((.getEventBus((.publish 事件以调用该视图中的函数。

您需要在导航到需要显示/隐藏元素的新视图中定义 sap.ui.getCore((.getEventBus((.subscribe((

在sap.ui.getCore((.getEventBus((.publish事件中,您可以传递上下文,该上下文可用于定义用于显示/隐藏元素的json模型

粘贴您的示例代码,然后我可以提出更改建议

最新更新