javascript - SAPUI5:当某些东西被破坏时函数 Hook

标签 javascript html sapui5

我有一个 SAPUI5 面板,可以在各种情况下因各种原因间接销毁该面板(例如,在本示例中,父级的父级被销毁)。因此,我必须使用来自控件本身的函数 Hook 。

我尝试调用exit函数(基于this堆栈溢出问题和this SAPUI5文档)

var oGrandParentPanel = new sap.m.Panel();
var oParentPanel = new sap.m.Panel();
var oPanel = new sap.m.Panel({
    exit: function(){
        alert("FOOBAR!");
    }});

oParentPanel.addContent(oPanel);
oGrandParentPanel.addContent(oParentPanel);
oGrandParentPanel.destroy();

我想要一个“FOOBAR!”警报,但我没有明白。

最佳答案

我认为您将生命周期方法与事件混淆了。生命周期方法在控件内定义,控件可以实现也可以不实现它们。事件是您可以将自己的功能绑定(bind)到的 Hook 。

如果您想要一个调用事件的面板(您可以将自己的逻辑附加到该事件),您可以对面板控件进行子类化。您可以在元数据和 onExit 方法中定义一个新事件,然后可以触发该事件。

如果您有兴趣在用户关闭浏览器时快速执行某些操作,您还可以使用 window.onbeforeunloadwindow.onunload。不幸的是,它们并不是 100% 独立于浏览器,并且不能保证它们会被调用。

关于javascript - SAPUI5:当某些东西被破坏时函数 Hook ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38636862/

相关文章:

javascript - Ionic 2 - 使用参数在页面之间导航(空白应用程序)

javascript - 循环数组和另一个对象中的对象

html - 右侧滚动导航栏透明?

javascript - 如何将数据从母版页传递到详细信息页SAPUI5?

css - 任何人都有位置为 :sticky not working on FF & IE? 的 table>th 的解决方案

javascript - jQuery 文本旋转/填充适用于单个词,但不适用于双词

javascript - 如何继续克隆输入的数字序列?

html - CSS:为什么当 child 漂浮时容器会溢出

sapui5 - 如何创建SAP Fiori自定义启动板?

javascript - phonegap window.location 不适用于 .html#page