gpt4 book ai didi

SAPUI5 自定义伪事件

转载 作者:行者123 更新时间:2023-12-01 08:59:01 25 4
gpt4 key购买 nike

在 SAPUI5/OpenUI5 中定义自定义伪事件的最佳实践是什么?

例如,假设我想在一个扩展的 sap.m.Button 上触发一个事件,并按住几秒钟。

最佳答案

我不确定是否有任何“最佳实践”,我真的认为只有“一个”实践 ;-) 但我很想学习任何其他方法,所以如果有人可以对此发表评论,请不要犹豫!

我认为总体思路只是定义您的事件; UI5 框架随后会自动生成用于注册 (attach<YourEvent>)、取消注册 (detach<YourEvent>) 和触发事件 (fire<YourEvent>) 的方法。

例如:

return ControlToExtend.extend("your.custom.Control", {
metadata: {
properties: {
// etc...
},
aggregations: {
"_myButton": {
type: "sap.m.Button",
multiple : false,
visibility: "hidden"
},
// etc...
},
associations: {
// etc...
},
events: {
yourCustomEvent: {
allowPreventDefault: true,
parameters: {
"passAlong": { type: "string" }
}
}
}
},

init: function() {
ControlToExntend.prototype.init.apply(this, arguments);
var oControl = this, oMyButton;
oMyButton = new Button({ // Button required from "sap/m/Button"
// ...,
press: function (oEvent) {
oControl.fireYourCustomEvent({
passAlong: "Some dummy data to pass along"
});
}
});
this.setAggregation("_myButton", oMyButton);
},

// etc...
});

希望这能解释一下。

关于SAPUI5 自定义伪事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22505486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com