admin管理员组

文章数量:1336148

I am using the vue-router for overlay menu's on mobile. This means when a user selects a filter link a full overlay will slide in from the left with filters options.

A user can of course select a filter from the default view, go back to the default view and select a filter again. This will cause the history to contain:

  • Default view
  • Filter view
  • Default view
  • Filter view

When a user clicks back multiple times it will iterate through the actions in reverse while preferably if there is an overlay active it should go back to the default view and then simply omit the history API data and continue with the default history data.

To get this done I guess I could use named routes and differentiate from a root(default) route between a non-root(overlay). If I want to go back on a root I should then delete the history API data?

Any thoughts on how to get this done?

The browser history can not be manipulated so how do I go back to a state before all the manipulation that has been done by the vue-router?

I am using the vue-router for overlay menu's on mobile. This means when a user selects a filter link a full overlay will slide in from the left with filters options.

A user can of course select a filter from the default view, go back to the default view and select a filter again. This will cause the history to contain:

  • Default view
  • Filter view
  • Default view
  • Filter view

When a user clicks back multiple times it will iterate through the actions in reverse while preferably if there is an overlay active it should go back to the default view and then simply omit the history API data and continue with the default history data.

To get this done I guess I could use named routes and differentiate from a root(default) route between a non-root(overlay). If I want to go back on a root I should then delete the history API data?

Any thoughts on how to get this done?

The browser history can not be manipulated so how do I go back to a state before all the manipulation that has been done by the vue-router?

Share Improve this question asked Dec 4, 2017 at 13:49 Stephan-vStephan-v 20.4k32 gold badges121 silver badges210 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 4

Try navigating around the filter views by calling this.$router.replace(). That way, back will take you to the page before default.

本文标签: javascriptVue router clear history API when going back from a default viewStack Overflow