两个自定义控件之间的事件处理

时间:2016-08-22 13:38:08

标签: event-handling custom-controls sapui5

我有两个自定义控件。 Control A通过调用

在Control B上附加事件处理程序
b.attachEventName( function(event, data){ ... })

实例化b。

控制B对点击作出反应并通过执行以下操作触发相关事件:

this.fireEventName( { key: value } );

我观察到我无法访问该对象,我在控件A的附加函数中触发了事件的参数。如何才能访问该对象?

PS:为了澄清:我想重用Control B,而使用B的不同控件可能希望为特定事件附加不同的函数。

谢谢, 基督教

2 个答案:

答案 0 :(得分:0)

问题在于您使用语法将事件附加到控件。

如果要在触发事件时将对象与事件对象一起传递,则代码为:

b.attachEventName(oData, function(oEvent){
    // your stuff
});

答案 1 :(得分:0)

这应该做:

b.attachEventName(function(event, data) {
  var sKey = event.getParameter("key")
});

此函数中的第二个参数data是您在注册Dopedev上述事件监听器时可能传递的数据。

BR 克里斯