H5 首页路由问题

2021-05-24 08:33:30 +08:00
 Departures
在使用 vue-router 的时候遇见了一个问题:在 h5 入口页滑动返回不会退出 h5,而是会回退到之前访问过的子页面,请问各位大大怎么解决?
2529 次点击
所在节点    Vue.js
9 条回复
kop1989
2021-05-24 08:57:51 +08:00
“退出 h5”是什么概念?
MonkeyD1
2021-05-24 09:00:40 +08:00
Location.replace()
MonkeyD1
2021-05-24 09:00:54 +08:00
bzw875
2021-05-24 09:02:44 +08:00
因为子页面也是路由,记录在历史记录了。解决办法就是子页面不用路由,设置一个状态字段控制显示隐藏更新
MonkeyD1
2021-05-24 09:02:52 +08:00
vue router 的话 router.replace(location, onComplete?, onAbort?)
跟 router.push 唯一的不同就是,它不会向 history 添加新记录,而是跟它的方法名一样 —— 替换掉当前的 history 记录。
workg
2021-05-24 09:08:32 +08:00
进入你 h5 应用的第一个页面为路由栈底,后续的页面都会在上面。
如果想要首页为第一个路由,需要把首页更新为栈底。可以通过 router.replace 等方法
h1104350235
2021-05-24 10:03:33 +08:00
如果是 app 内嵌 h5 的话,需要客户端提供一个关闭 webview 的方法。
zhuweiyou
2021-05-24 10:54:16 +08:00
监听 pop state 调用关闭 webview 的方法, 如果是微信内, 可以 wx.closeWindow()
sjhhjx0122
2021-05-24 16:44:29 +08:00
子页面的返回用 replace,不要用 push

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/778758

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX