on 11-28-2016 6:53 AM
Hi,
Documentation tells that onExit() calls by framework when view is destroyed.
Does any one know whether Controller's onExit() will be called either on page "refresh" OR closing browser tab.?
Thanks,
Srinath
Ok.
Is there any way to distinguish between "refresh" and "tab close" of a Browser by using UI5 ?
Thanks,
Srinath
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
yes, i think you can use navigation.type which will return you the navigation type, it will return 1 or 0 (not sure) on browser refresh.
check below code inside beforeunload function.
window.addEventListener("beforeunload", function (oEvt) {
if (oEvt.currentTarget.performance.navigation.type == 1){
alert("refresh called!");
}
});
OR
Store a cookie the first time visits the page, and you can check this key in beforeunload function whether your key is exists or not, if yes then browser refresh called.
Hope this help.
Regards,
Akhilesh
Hi Akhilesh,
Got the solution for above issue, where we are getting "0" on refresh for the first time.
"For the first time the page was loaded by direct navigation. Then subsequent reloads will set '1' on refresh, because the page is now loaded by reloading."
Thank you so much!!!
By using '1' on refresh i will keep condition to not execute the code.
Thanks,
Srinath
Hi- We can find this action on two places.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ulrich,
Thank you for response.
In our app we are not using Routing and it is a Customized UI5 app.
Challenge here is, in our app we are calling 'DestroySession' OData call to kill user session inside "beforeunload" method. 'DestroySession' should execute only Closing of the browser, not on Browser refresh. Unfortunately, "beforeunload" is being called on browser "refresh" also.
I tried to distinguish between "refresh" and "tab close", but no luck.
I tried modifying 'beforeunload' so as to prompt user with options "Leave/Stay", but am unable to get the event on which button user has clicked (Leave/Stay).
So, thought of shifting 'Destroying Session' OData call to onExit(). Trying to see when onExit() will be executed, either on 'refresh of the page' OR 'tab close'.
Thanks,
Srinath
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
On the one hand you can configure to destroy navigational views at routing by configuring the clearTarget property.
Or in case you tear down an app, onExit will be executed as well. Examples could be the tear down of a Fiori app or the iTeardownMyUIComponent() function used at OPA5 testing.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
87 | |
10 | |
10 | |
9 | |
7 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.