getComponent

2020-08-31 09:23发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我正在使用Compo...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在使用Component方法构建应用程序,这很棒。 但是现在我面临的问题是,我无法从组件内部访问父(或任何其他)组件。 我知道核心上有一个getComponent方法,但是

 sap.ui.getCore()。getComponent(" myComponentId")
 

什么都没给我。

 sap.ui.getCore()。getRootComponent()
 

也不返回任何内容。

这是我用来创建组件的代码:

 新的sap.ui.core.ComponentContainer(" componentId",{
         高度:" 100%",
         宽度:" 100%",
         名称:" com.component.my.nice",
         broadcastModel:正确
       });
 

整个事情都在sap.m.Shell + sap.m.SplitApp中运行。 在我的index.html中,将SplitApp创建为Shell的根组件,如下所示:

 new sap.m.Shell(" Shell",{
             应用:新的sap.ui.core.ComponentContainer(" RootContainer",{
               高度:" 100%",
               宽度:" 100%",
               名称:" com.component.root",
               displayBlock:" true",
               模式:" HideMode"
             })
           })。placeAt(" content");
 


我在做什么错,为什么我不能查询组件? 如何访问常规组件注册表?


欢呼

基督徒

6条回答
打个大熊猫
2020-08-31 09:26 .采纳回答

嗨,基督徒

为了提供组件的ID,您必须在组件实例化时对其进行设置,例如 在以下代码段中

var oComp = sap.ui.getCore()。createComponent({

名称:" my.component.class",

id:" myComp",

高度:" 100%"

});

var oComponentContainer = new sap.ui.core.ComponentContainer({

组件:oComp

});

oComponentContainer.placeAt(" content");

然后您可以稍后通过

访问该组件

sap.ui.getCore()。getComponent(" myComp")

一周热门 更多>