我一直在学习主 - 详细演示,下面是Master.controller.js
onInit : function() {
this.getView().addEventDelegate({
onBeforeFirstShow: function () {
this.getOwnerComponent().oListSelector.setBoundMasterList(oList);
}.bind(this)
});
}
我无法理解该事件代理,因为我还没有看到onBeforeFirstShow
事件在任何控件/视图API文档中。
这是用户定义的事件还是预先定义的事件?
我试过了
this.getView().addEventDelegate({
onBeforeFirstShow: function () {
console.log("onBeforeFirstShow");
}.bind(this),
onAfterRendering: function () {
console.log("onAfterRendering");
}.bind(this)
});
似乎它发生在onAfterRendering
之前。除了:
this.getView().onAfterRendering
返回function
this.getView().onBeforeFirstShow
返回undefined
。我搜索了Controller和View的文档,以及sap.ui.core.mvc.Controller和sap.ui.core.mvc.View的源代码。只有四种生命周期方法。
答案 0 :(得分:1)
事件beforeFirstShow
可用于视图,因为该视图是NavContainer
的直接聚合子项。除此之外,目前还有
afterHide
afterShow
beforeHide
beforeShow
当导航发生并显示/隐藏子控件时,这些事件由sap.m.NavContainer
在其子控件(在我们的例子中是视图)上触发。