点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我目前在父应用程序中制作了一个组件容器,该子容器在子应用程序中包含搜索功能。 搜索后,用户将转到上级应用程序中可以正常工作的页面。
但是,如果我想返回到包含组件容器的页面,则会给我两个重复的id错误。
添加具有重复ID'__component1 --- View1'的元素
'添加具有重复ID'__component2 --- View1'的元素
但是,我通过分配包含id的组件容器并对页面进行路由时对其进行了.destroy修复了第一个。
但是,"添加具有重复ID'__component2 --- View1'的元素时出现错误,我不太确定从哪里引用了。 我也尝试对该容器执行.destroy,但是在执行sap.ui.getcore()。byid时似乎不存在。
下面,我为parentapp .xml和.js提供了代码
parentapp.xml
<页面> <页面标题="客户搜索" id =" pageID" backgroundDesign ="透明" enableScrolling =" false"> <内容>
parentapp.js
sap.ui.define([ " sap/ui/core/mvc/Controller", " sap/ui/model/json/JSONModel", " sap/m/MessageBox", " sap/ui/model/FilterOperator", " sap/m/MessageToast", " sap/m/Dialog", " sap/m/Text", " sap/m/Button", " sap/ui/model/Filter" ], 函数(控制器,JSONModel,MessageBox,FilterOperator,MessageToast,对话框,文本,按钮,过滤器){ "使用严格"; var that = this; var oRouter; var componentSearch; var PageController = Controller.extend(" Z_LE.Z_LE.controller.BookAppointmentV4",{ onInit:函数(){ 那=这个; componentSearch = that.byId(" componentSearch"); //var comp2 = that.byId(" __ component2 --- View1"); var route = sap.ui.core.UIComponent.getRouterFor(this); route.attachRouteMatched(function(oEvent){ componentSearch.destroy(); //comp2.destroy(); }); }, 返回PageController; });
您是否尝试过设置生命周期。 那可能对您有帮助。 也可能是您需要从组件容器内部销毁搜索组件本身。
嗨,雅各布,
感谢您的回复。 我已经尝试了所有类型的容器生命周期,但仍然给我相同的错误。
我试图从组件容器内部销毁搜索组件,但是我无法引用ID(不知道什么) id是)尝试引用" __component2 --- View",但是它在任何地方都不存在-即使在通过调试器进行搜索时也是如此。 有什么建议吗?
谢谢。
一周热门 更多>