router.currentRoute.url inconsistent after router.back

I’m on F7 4.4.7. There is an inconsistency when using router.currentRoute.url after using router.back.

My mobile app starting page has the following route:

{
    name: 'startup-index',
    path: '/startup/index/',
    url: '/app/Startup/index',
    options: {
        ignoreCache: true
    }
}

Here, router.currentRoute.url will report ‘/startup/index/’.

If I navigate to another page and then call:

mainView.router.back("/app/Startup/index", { ignoreCache: true, force: true });

Then, router.currentRoute.url will report ‘/app/Startup/index/’.

This breaks the refreshPage or:

router.navigate(router.currentRoute.url, {
  reloadCurrent: true,
  ignoreCache: true,
});

functionality.

Also, router.currentRoute.url and router.currentRoute.path are rerporting the same.

Looks like you mess what url in route parameters and url in route mean. These are different things.

mainView.router.back("/app/Startup/index")

It will have to look with path that match to that url. You don’t have such route. I guess you should call here mainView.router.back("/startup/index/")

OK. It works now if I use the “path”. So, “url” for the router means “path”? In the documentation, it says:

router.back(url, options)

instead of

router.back(path, options)

No, path is used to find route that matches to requested page URL. In your case they are same but could be other case,

path: '/page/:id/'

Will math to URLs like /page/1/, /page/3/?foo=bar, etc.