Quantcast
Channel: SAPUI5 Developer Center
Viewing all articles
Browse latest Browse all 789

An example of how to find back button implementation on Smart Template generated application

$
0
0

One of my colleagues today asked me this question: Suppose this below is an application generated by Smart Template, and I would like to debug how the back button is implemented. Since the whole UI page is implemented by framework, I don't know where to set breakpoint. How to proceed?

clipboard1.png

Here below is my process about how to find the back implementation in framework file within several minutes.

 

1. Use Chrome extension Inspector ( the UI5 tab in Chrome development tool below ) to figure out that the button is located in UI area sap.uxap.ObjectPageHeader.

clipboard2.png

Based on the learning in My understanding about how object page in Smart Template is renderedI search by keyword "Back" in file Details.view.xml first, no result.

clipboard3.png

2. Then search in next xml file NavigationBar.fragment.xml, this time the button is found.

clipboard2.png

Perform global search via Ctrl+Shift+F with key word "_templateEventHandlers.onBack", no result.

clipboard3.png

Then search "_templateEventHandlers" instead, this time TemplateAssembler-dbg.js is found.

clipboard4.png

Unfortunately it is difficult to judge the type of _templateEventHandlers simply from context code as it is filled in a generic way.

clipboard5.png

3. Perform search on onBack instead, and the result is what I am looking for:

clipboard6.png

Set a breakpoint and click back button to verify: breakpoint is triggered:


clipboard7.png

So the trick here is the keyword I am using to search in a tentative way.

 

  • first time search by _templateEventHandlers.onBack, no result
  • second time search by _templateEventHandlers, has result but not useful
  • third time search by onBack, done.



Viewing all articles
Browse latest Browse all 789

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>