A quick way to find which code has changed the UI5 application page title by debugging
In Fiori launchpad, the page title will display default value “Home”. When I click a given tile to enter an UI5 application, the page title is changed for example from “Home” to “My Tasks”.
Today I am dealing with an incident that once I have entered one application, the page title is not displayed correctly, see below error screenshot:
In order to fix this issue, I need to know exactly which line has changed the value of page title.
Since I don’t have any clue why page title becomes like this when I enter the erroneous application, so my thought is if I can test with an application where the page title works correctly, and if I can find out the line of code for title value assignment, then I can set breakpoint on that line and debug back with erroneous application.
Thanks to the power of Chrome development tool, I can finish trouble shooting in a quite efficient way.
First step, Identify which html tag holds the value of page title. Open Chrome development tool, click Elements tab and locate the tag “title”. Change its value and the change will refresh in browser immediately. This proves the fact that it is title tag which holds page title.
Then right click this title element, choose “Break on…” and mark all three options.
Now go back from application to launchpad by clicking back button, break point is triggered.
Navigate back to an application where page title display works. So it is Shell.controller.js who is responsible to change page title with variable sTitle. Now my task is to find out how variable sTitle is filled.
Go back to an outer callstack frame, sTitle comes from one attribute of object oMetadata. So where is oMetadata filled?
In line 892, now I understand: the oMetadataConfig comes from metadata configuration defined in Fiori application:
And this is i18n.properties file:
For a complete blog list of how I use Chrome development tool in my daily work, please find it from this blog: Chrome Development Tool tips used in my daily work.