kendo-uikendo-mobile

How to determine view is backed in Kendo Mobile?


Is there any way to know that view is open by back?

For example

<div data-role="view" id="view-test" data-show="show">
<!-- View content -->
</div>

<script>
var show = function(e){
    if(e.view.isBack())
    {
        console.log("Back")
        // do something
    } 
}
</script>

Is there any method or property like e.view.isBack() ?


Solution

  • There are many ways to handle this, maybe you can use a global variable where you keep the last visited page or even you can add a back button handler and get the view from which the back button was pressed. Another solution would be to pass a parameter along with page navigation when going back, for example:

    <a data-role="button" href="#foo?back=true">Link to FOO with back parameter set to true</a>
    

    And on the visited page on show event you can get the parameter like this:

    function fooShow(e) {
         e.view.params // {back: "true"}
    }
    

    Now depending on what the parameter value is you can detect if the back button was pressed or not before reaching the page.