天天看點

SAP UI5架構繪制footer區域的入口調試

以Opportunity為例,直接在ButtonRenderer.js的render方法設個斷點就行了:

SAP UI5架構繪制footer區域的入口調試

它會被反複call到,先是觸發4次,因為Opportunity右下角有4個button。

然後又觸發一次,為了畫這個<- button:

SAP UI5架構繪制footer區域的入口調試

然後又觸發一次,畫這個sort,這一點可以通過sort tooltip識别:

SAP UI5架構繪制footer區域的入口調試

然後畫這個add button,可以通過icon 識别:

SAP UI5架構繪制footer區域的入口調試

看callstack:

SAP UI5架構繪制footer區域的入口調試

另外确實像你說的,MasterHeaderFooter 最重要的邏輯都寫在下面這個js file裡,

從注釋發現defineMasterHeaderFooter方法隻有在每次list binding 發生change時才會被call到。每次odata回來時,_handleSuccess會trigger list binding change。

SAP UI5架構繪制footer區域的入口調試

這個define方法就會call我們controller裡實作的getHeaderFooterOptions了。好好理一下關系吧。

SAP UI5架構繪制footer區域的入口調試

繼續閱讀