SAPUI5:当某些东西被销毁时的函数钩子

时间:2016-07-28 12:48:28

标签: javascript html sapui5

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

我尝试调用退出函数(基于this Stack Overflow问题和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!”警报,但我没有得到它。

1 个答案:

答案 0 :(得分:2)

我认为你的生活周期方法与事件有关。生命周期方法在控件中定义,控件可以实现或不实现。事件是您可以将自己的功能绑定到的钩子。

如果您希望有一个调用事件的面板(您可以将自己的逻辑附加到),则可以继承面板控件。您可以在元数据中定义新事件,然后在onExit方法中,您可以触发该事件。

如果您在用户关闭浏览器时快速做某事很有意思,那么您还可以使用window.onbeforeunloadwindow.onunload。不幸的是,它们不是100%独立于浏览器,并且不能保证它们将被调用。