在Master Detail应用程序中使用事件总线期间出错。

2020-09-04 14:11发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 使用事件总线(订阅和...

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

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


大家好,

使用事件总线(订阅和发布)时出现错误。

因此,当是第一次从启动板加载应用程序时,以下代码可以正常工作。

但是当我回到启动板并再次进入该应用程序时,它不起作用。

错误是

datajs-dbg.js:7960未被捕获的TypeError:无法在构造函数a.publish( EventBus-dbg.js:211)在成功(Detail.controller.js?eval:1)在_(ODataModel-dbg.js:1653)在ODataModel-dbg.js:3252在datajs-dbg.js:1634在p9 (datajs-dbg.js:2539)位于Object.request(datajs-dbg.js:2591)位于E2(datajs-dbg.js:1612)位于Object.o.request(datajs-dbg.js:7954)

//------------------------------------在母版页中------  ---------------
 onInit:function(){

 var oEventBus = sap.ui.getCore()。getEventBus();
 oEventBus.subscribe(" Master"," onRefresh1",this.onRefresh1,this);

 },

 onRefresh1:函数(){
 this._oList.getBinding(" items")。refresh();
 var eventBus1 = sap.ui.getCore()。getEventBus();
 eventBus1.publish(" Detail"," _ bindView");
                          },


//------------------------------------详细页面---------  ------------
 onSave:function(){
      var eventBus = sap.ui.getCore()。getEventBus();
 eventBus.publish(" Master"," onRefresh1");
                
 } 

您能指导我我在做什么错吗?

预先感谢。

此致

Sujoy

7条回答
clever101
2020-09-04 14:51

它现在对我有用 。 我刚刚添加了以下代码。

var _oComponent = this.getOwnerComponent();

var oList = _oComponent.oListSelector._oList;

var oListBinding = oList.getBinding(" items");

oListBinding.refresh(true);

var eventBus1 = sap.ui.getCore()。getEventBus();

eventBus1.publish(" Detail"," _ bindView");

一周热门 更多>