最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Vue router clear history API when going back from a default view? - Stack Overflow

programmeradmin0浏览0评论

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.

发布评论

评论列表(0)

  1. 暂无评论