gpt4 book ai didi

javascript - SAPUI5 事件总线 : Prevent stacking the same subsciptions

转载 作者:行者123 更新时间:2023-11-29 21:52:37 26 4
gpt4 key购买 nike

当我点击一个按钮时,我想订阅一个事件

EventBus.subscribe("sChannelFoo", "sIdBar", function(){
alert("FOOBAR!");
});

我在整个代码中都订阅了“sChannelFoo”和 sIdBar”。有什么巧妙的解决方案可以确保我只用这个按钮订阅一次这个事件,即使我点击了我的按钮几次?

如果我有 1000 个其他按钮,我希望它们也能够恰好订阅一次“sChannelFoo”和“sIdBar”。其他 1000 个按钮可能具有相同或不同的功能。

最佳答案

您可以在 Button 控件上使用 attachEventOnce 方法:https://openui5.hana.ondemand.com/docs/api/symbols/sap.ui.base.EventProvider.html#attachEventOnce

使用已注册的处理函数,您可以调用对事件总线的订阅:

oButton.attachEventOnce('press', function() {
EventBus.subscribe("sChannelFoo", "sIdBar", function() {
alert(FOOBAR!");
});
}

关于javascript - SAPUI5 事件总线 : Prevent stacking the same subsciptions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28299707/

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