SAP UI5 框架画Button的入口

以Opportunity为例,直接在ButtonRenderer.js的render方法设个断点就行了:
SAP UI5 框架画Button的入口

它会被反复call到,先是触发4次,因为Opportunity右下角有4个button。

然后又触发一次,为了画这个<- button:

SAP UI5 框架画Button的入口

然后又触发一次,画这个sort,这一点可以通过sort tooltip识别:
SAP UI5 框架画Button的入口

然后画这个add button,可以通过icon 识别:

SAP UI5 框架画Button的入口

看callstack:

SAP UI5 框架画Button的入口 另外确实像你说的,MasterHeaderFooter 最重要的逻辑都写在下面这个js file里, SAP UI5 框架画Button的入口

从注释发现defineMasterHeaderFooter方法只有在每次list binding 发生change时才会被call到。每次odata回来时,_handleSuccess会trigger list binding change。

SAP UI5 框架画Button的入口 这个define方法就会call我们controller里实现的getHeaderFooterOptions了。 SAP UI5 框架画Button的入口

要获取更多Jerry的原创文章,请关注公众号"汪子熙":
SAP UI5 框架画Button的入口