首页 新闻 搜索 专区 学院

vue 路由记录问题

0
悬赏园豆:5 [已解决问题] 解决于 2020-04-01 17:03

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

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

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

Cgrain的主页 Cgrain | 小虾三级 | 园豆:1121
提问于:2020-03-26 20:24
< >
分享
最佳答案
0

跳转带参数

Cgrain | 小虾三级 |园豆:1121 | 2020-04-01 17:02
其他回答(1)
0

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

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

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

收获园豆:5
。淑女范erり | 园豆:897 (小虾三级) | 2020-03-27 14:08

我想到一个方法,就是 当你直接 xxx/login 那么我们带上 xxx/login?to=home (类似) 这样否则就返回我们的网站上一个页面

支持(0) 反对(0) Cgrain | 园豆:1121 (小虾三级) | 2020-03-27 14:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册