2016-08-22 46 views
0

我有兩個自定義控件。控制A通過在實例化b之後調用兩個自定義控件之間的事件處理

b.attachEventName(function(event, data){ ... }) 

來在控制B上附加事件處理程序。

對比B反應上的點擊,並通過做這樣的事情觸發相關事件:

this.fireEventName({ key: value }); 

我注意到,我沒有訪問對象,我給的參數的發射事件在控件A中的附加函數中。如何訪問該對象?

PS:澄清:我想重新使用控制B,而使用B的不同控件可能希望爲特定事件附加不同的功能。

感謝, 基督教

回答

0

問題是與您正在使用的事件連接到控制語法。

如果你想與觸發事件時,事件對象一起傳遞一個對象,代碼如下:

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

但我想通過觸發事件發送數據。現在,我的解決方案是將控件A的功能賦予控件B,然後使用this.attachEventName(object,functionFromClassA)將該函數附加到事件上,然後直接觸發事件。 –

+0

通過'this.fireEventName({key:value})觸發事件時,您仍然可以發送數據;'' – Dopedev

0

這應該這樣做:

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

第二個參數data在這個函數是Dopedev如上所述註冊事件偵聽器時潛在傳遞的數據。

BR Chris