我的编程空间,编程开发者的网络收藏夹
学习永远不晚

vue如何清除浏览器历史栈

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

vue如何清除浏览器历史栈

如何清除浏览器历史栈

问题

需要跳转好几个页面进行表单提交,提交完之后,跳转回首页,返回上一页,发现还可以返回上一级页面路由

//可以拿到历史记录栈,清空栈
let routeHistory=history.length-1;
this.$router.go(-routeHistory);

vue返回首页后如何清空路由

需求一:从首页点击路由到A页面

  • A页面点击路由到B页面
  • B页面点击路由到C页面
  • C页面点击路由链接到D页面
  • D页面有个返回首页按钮

那么问题来了

点击返回首页后,再点击手机的返回键 会打开D页面 再按手机返回键 会打开C页面,依次类推,

如何才能实现点击返回首页后,清空路由呢

mounted () {
    if (window.history && window.history.pushState) {
        // 向历史记录中插入了当前页
        history.pushState(null, null, document.URL);
        window.addEventListener('popstate', this.goBack, false);
    }
},
destroyed () {
    window.removeEventListener('popstate', this.goBack, false);
},
methods: {
    goBack () {
        // console.log("点击了浏览器的返回按钮");
        sessionStorage.clear();
        window.history.back();
    },
} 

禁止有返回记录

mounted () {
    if (window.history && window.history.pushState) {
        // 向历史记录中插入了当前页
        history.pushState(null, null, document.URL);
        window.addEventListener('popstate', this.goBack, false);
    }
},
destroyed () {
    window.removeEventListener('popstate', this.goBack, false);
},
methods: {
    goBack () {
        // console.log("点击了浏览器的返回按钮");
        history.pushState(null, null, document.URL);
    },
} 

需求二:把浏览器的记录返回指定的页面

mounted 中:
 if (window.history && window.history.pushState) {
      history.pushState(null, null, document.URL);
      window.addEventListener("popstate", _this.onClickLeft, false);  //_this.onClickLeft是返回的点击事件
    }
 methods: {
    onClickLeft() {
    //   this.$route.query.radio支付页面到指定页面传的参数 来判断他的路由
      if (this.$route.query.radio == 1 || this.$route.query.radio == 2) {
        this.$router.push({ //返回指定页面
        });
      } else {
        this.$router.go(-1);  // 正常返回
      }
    },

// 将事件清除掉
 destroyed() {
    window.removeEventListener("popstate", this.onClickLeft, false);
  }

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

vue如何清除浏览器历史栈

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

vue怎么清除浏览器历史栈

这篇文章主要介绍“vue怎么清除浏览器历史栈”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue怎么清除浏览器历史栈”文章能帮助大家解决问题。如何清除浏览器历史栈问题需要跳转好几个页面进行表单提交,
2023-06-30

Vue如何实现顶部tags浏览历史

这篇文章主要为大家展示了“Vue如何实现顶部tags浏览历史”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Vue如何实现顶部tags浏览历史”这篇文章吧。废话demo预览实现的功能默认有首页,不
2023-06-22

php如何清除历史

这篇文章将为大家详细讲解有关php如何清除历史,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php清除历史的方法:1、创建一个PHP示例文件;2、通过setcookie设置cookie;3、通过“echo
2023-06-22

windows ie浏览器如何清除浏览器缓存

本篇内容主要讲解“windows ie浏览器如何清除浏览器缓存”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“windows ie浏览器如何清除浏览器缓存”吧!ie浏览器清除浏览器缓存的方法:1、
2023-07-02

怎么删除电脑浏览器的历史记录

要删除电脑浏览器的历史记录,可以按照以下步骤操作:Google Chrome浏览器:1. 打开Chrome浏览器。2. 点击右上角的菜单图标(三个竖点)。3. 选择“历史”选项。4. 在左侧的菜单中,点击“清除浏览数据”。5. 在弹出的对话
2023-09-11

windows edge浏览器历史记录如何恢复

这篇文章主要介绍了windows edge浏览器历史记录如何恢复的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇windows edge浏览器历史记录如何恢复文章都会有所收获,下面我们一起来看看吧。edge浏览器
2023-07-01

win8如何清除浏览器缓存

这篇文章主要介绍了win8如何清除浏览器缓存的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇win8如何清除浏览器缓存文章都会有所收获,下面我们一起来看看吧。win8清除浏览器缓存的方法1、打开浏览器之后点击上方
2023-07-04

jQuery如何监听浏览器历史记录事件?

jQuery监听浏览器历史记录事件jQuery提供了hashchange和popstate事件,用于监听浏览器历史记录更改。hashchange事件在URL哈希更改时触发,适用于监听URL特定部分的更改。popstate事件在浏览器历史记录更改时触发,适用于监听任何历史记录修改。优点:易于使用可靠性(popstate)灵活度(hashchange)缺点:仅监听哈希更改(hashchange)可能出现延迟(hashchange)不必要的事件(popstate)用途:单页应用程序更新动态导航表单验证用户活动跟
jQuery如何监听浏览器历史记录事件?
2024-04-08

电脑如何清除浏览器缓存

这篇文章主要介绍“电脑如何清除浏览器缓存”,在日常操作中,相信很多人在电脑如何清除浏览器缓存问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”电脑如何清除浏览器缓存”的疑惑有所帮助!接下来,请跟着小编一起来学习吧
2022-12-01

Win10如何清除浏览记录

要清除Windows 10上的浏览记录,可以按照以下步骤操作:1. 打开你使用的浏览器。2. 在浏览器的右上角点击菜单按钮,通常是一个三个竖点或横杠的图标。3. 从下拉菜单中选择“设置”或“选项”选项。4. 在设置或选项页面中,寻找一个称为
2023-08-22

win7系统如何清除浏览器缓存

这篇文章主要介绍了win7系统如何清除浏览器缓存,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、以IE浏览器为例,在浏览器的菜单栏中点击工具,然后点击“internet选项
2023-06-28

windows edge浏览器pdf批注如何清除

这篇文章主要介绍“windows edge浏览器pdf批注如何清除”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“windows edge浏览器pdf批注如何清除”文章能帮助大家解决问题。edge浏览
2023-07-01

Win8.1如何清除可靠性历史记录关闭历史记录功能

最近几代的Windows系统都有个可靠性历史记录的功能,它是按一定的规则对系统过去状态进行评分。有的人讨厌这个功能,想把它关闭。不过这个功能无法关闭,只能清除记录。按照以下方法来清除可靠性历史记录:1.右击“win”
2022-06-04

win10系统中如何清除浏览器缓存

小编给大家分享一下win10系统中如何清除浏览器缓存,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.打开浏览器,点击右上角的图标2.选择开始菜单进行设置。3.点
2023-06-27

win7如何快速清除浏览器缓存和cookies

本文小编为大家详细介绍“win7如何快速清除浏览器缓存和cookies”,内容详细,步骤清晰,细节处理妥当,希望这篇“win7如何快速清除浏览器缓存和cookies”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1
2023-06-28

vue部署上线清除浏览器缓存的方式

这篇文章主要介绍了vue部署上线清除浏览器缓存的方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2022-11-13

编程热搜

目录