从第一个页面到第二个路由页面时,在第二个路由页面通过组件守卫beforeRouteEnter打印出from的值,为如下图
这个是正常的
但是当我在第二个页面点击刷新以后,打印出的from值为下图
是空的,获取不到第一个页面页面栈的信息了,这个问题改如何解决
从第一个页面到第二个路由页面时,在第二个路由页面通过组件守卫beforeRouteEnter打印出from的值,为如下图
这个是正常的
但是当我在第二个页面点击刷新以后,打印出的from值为下图
是空的,获取不到第一个页面页面栈的信息了,这个问题改如何解决
js虽然能通过window.history.back()
,window.history.go()
执行浏览器历史记录跳转操作。但是却没办法获得浏览器真正的History
列表。vue-router
之所以能实现前端路由,并给你的导航守卫form
,to
,只是得益于前端单页面应用并没有真正跳转的特性,把历史路径记录下来实现的。
你页面刷新了它记录的这些数据就丢失了,又没办法通过浏览器拿数据,只能等于重头开始,当然取不到上个页面form
了。
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答2k 阅读
你在第二个页面刷新,肯定找不到是从哪个页面来的
我建议你,在第一个页面前往第二个页面的时候,比如/first -> /second
把第一个页面的路由标识传递到第二个页面的Url里,如下:
/second?from=first