在使用 vue-router 的时候遇见了一个问题:在 h5 入口页滑动返回不会退出 h5,而是会回退到之前访问过的子页面,请问各位大大怎么解决?
1
kop1989 May 24, 2021
“退出 h5”是什么概念?
|
2
MonkeyD1 May 24, 2021
Location.replace()
|
3
MonkeyD1 May 24, 2021 |
4
bzw875 May 24, 2021
因为子页面也是路由,记录在历史记录了。解决办法就是子页面不用路由,设置一个状态字段控制显示隐藏更新
|
5
MonkeyD1 May 24, 2021 vue router 的话 router.replace(location, onComplete?, onAbort?)
跟 router.push 唯一的不同就是,它不会向 history 添加新记录,而是跟它的方法名一样 —— 替换掉当前的 history 记录。 |
6
workg May 24, 2021
进入你 h5 应用的第一个页面为路由栈底,后续的页面都会在上面。
如果想要首页为第一个路由,需要把首页更新为栈底。可以通过 router.replace 等方法 |
7
h1104350235 May 24, 2021
如果是 app 内嵌 h5 的话,需要客户端提供一个关闭 webview 的方法。
|
8
zhuweiyou May 24, 2021
监听 pop state 调用关闭 webview 的方法, 如果是微信内, 可以 wx.closeWindow()
|
9
linkopeneyes May 24, 2021
子页面的返回用 replace,不要用 push
|