小白请教下 vue 怎么阻止一些手机自带的返回键

2020-01-16 17:30:20 +08:00
 ChengNaNA

正常情况下:按页面 A 中的返回按钮 push 返回到页面 B 并传某个参数。 手机返回键下:页面 A 直接返回到上个页面 B,然后页面 B 缺了某个参数。 前端小白百度也找不到明确方法,求大佬们好心解答,谢谢!

3454 次点击
所在节点    Vue.js
6 条回复
LyleRockkk
2020-01-16 17:38:18 +08:00
你 google "js 阻止 手机返回键返回",就知道了
shcolo
2020-01-16 17:42:32 +08:00
xiangyuecn
2020-01-16 17:49:55 +08:00
一进页面二话不说,先 history.pushState 10 次,占满后退历史,不够? 100 次
chairuosen
2020-01-16 17:50:53 +08:00
就不该这么设计,应该在 A 的 beforeRouteLeave 里找个地方存参数,B 页面 mounted 再取
Biwood
2020-01-16 18:17:38 +08:00
如果你要通过阻止用户返回上一页的方式来解决页面传参问题,那么你的程序设计**一定**有问题。
lbw
2020-01-17 10:12:20 +08:00
1. 返回按钮的本质撤消当前历史记录,所以不存在返回按钮会 push
2. 如果 A 和 B 都是在 vue-router 下,B -> A,要实现 A 无法返回 B 的话,那么 B -> A 应该用 router.replace 而不是 router.push,即用 B 的历史记录覆盖 A 的历史记录

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

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

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

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

© 2021 V2EX