-->

vue 路由记录问题

2020-04-01 16:57发布

问题:

我的一个页面 http://localhost:8080/Login

用户浏览器直接输入这个地址,然后点击右上角返回,如果不是我网站过来的,就返回首页,如果是从我的网站其他页面过来的,就返回其他页面
我目前是这样处理的 window.history.length > 1 ? this.$router.back() : this.$router.push("/");
现在有个问题就是, 其他页面过来的,点返回就返回到原页面了, 如下图:

我希望这种情况是返回到我的网站的首页,这里该如何实现?

回答1:

跳转带参数



回答2:

你现在的判断条件是 window.history ,这个是当前tab页的历史记录总数,没得办法判断上一步是哪儿里的。

因为安全因素,浏览器应该不会开放接口让js获取整个的历史记录,只提供了上一步,下一步的功能,而无法知道具体到哪个URL去。

我建议在你的js中记录用户的访问记录,即:开始进入你的页面时,开始记录整个历史记录和当前位置,如果当前位置为你记录的第一个,那么说明上一步已经不是你的页面了,这时候才跳到你的主页。



标签: vue 路由