vue清除路由历史记录

  • 为什么要清除路由历史记录
  • 路由跳转
    • push
    • replace
  • 清除路由历史记录

为什么要清除路由历史记录

1、在公众号H5的开发(使用vue + vant)中,我不想往路由增加历史记录。
2、从A页面→B页面→C页面,直接返回A页面

路由跳转

push

router.push(location, onComplete?, onAbort?)

声明式 编程式
<router-link :to="..."> router.push(...)

1、this.$router.push("/HomePage");this.$router.push({ path: "/HomePage" });向 history 栈增加一条记录
2、this.$router.push({ path: "/HomePage", replace: true });并不增加 history 记录而是替换当前的 history 记录

replace

router.replace(location, onComplete?, onAbort?)

声明式 编程式
<router-link :to="..." replace> router.replace(...)

1、this.$router.replace({ path: "/HomePage" });并不增加 history 记录而是替换当前的 history 记录

清除路由历史记录

1、A页面→B页面,回到A页面。相当于返回上一页this.$router.go(-1);
2、A页面→B页面→C页面,回到A页面,再点返回键不会回到A、B、C这些页面。实际项目中这种情况出现的比较多。
对于知道层数的我们可以使用router.go(n),即

this.$router.go(-2);

我们可以使用这种方法返回到 history 栈中的指定页面(已知页面,知道回到那个页面需要点返回键的次数)

像不知道多少层的我们可以像下面这样,可用于在较深的页面回到首页

let backlen = window.history.length - 1;
window.history.go(-backlen);
this.$router.replace({ path: '/HomePage' });

3、A页面→B页面→C页面,点返回键到A页面。
在B页面→C页面的时候使用this.$router.replace({ path: C页面路由 });这个时候相当于 history 栈上之后A页面和C页面,A页面就是C页面的上一个页面,所以就实现了点返回键回到A页面

我们也可以用原生的方法来替换,实现同等效果
window.location.href = "http://localhost:8080/HomePage";增加 history 记录
window.location.replace("http://localhost:8080/HomePage");替换 history 记录
window.history.go(-1);返回上一页

vue清除路由历史记录相关推荐

  1. java游戏spa,【Vue的路由,SPA概念】

    前言 本章是为了以后实现前端页面的搭建而写的, 重点在于如何实现 单页Web应用 因为相对于以前的传统多页面web,有很大的缺陷. 那么就必须了解一下Vue的路由设置. SPA的概念 总的而言,我们知 ...

  2. Vue day06 路由

    Vue day06 路由 补充 父传子props的约束条件: 父传子:子接收用对象方式,那么可以增加约束条件 在child.vue中props: {msg:{// 必填项required:true,/ ...

  3. Vue的路由实现原理解析(最清晰)

    Vue的路由实现原理解析(最清晰) 一般源码中,都会用到 window.history 和 location.hash history 实现 window.history 对象包含浏览器的历史,win ...

  4. vue react 路由history模式刷新404问题解决方案

    vue react 路由history模式刷新404问题解决方案 参考文章: (1)vue react 路由history模式刷新404问题解决方案 (2)https://www.cnblogs.co ...

  5. vue的路由与es6的import, export

    vue主要用来实现前端模块化编程, 它的最终代码是一些序列化的js,简单的index.html访问入口,和一些image, vue的js使用es6来模块化设计, 为什么要这么做呢,我想主要是为了前端与 ...

  6. vue 打包路由报错_Vue下路由History模式打包后页面空白的解决方法

    vue的路由在默认的hash模式下,默认打包一般不会有什么问题,不过hash模式由于url会带有一个#,不美观,而且在微信分享,授权登录等都会有一些坑.所以history模式也会有一些应用场景.新手往 ...

  7. vue.js路由配置vue-router的基础学习 - 概念篇

    文章目录 引言 · 相关问题小结: 一.动态路由匹配 (两种情况) A. 两种情况,代码对比: B. 两种情况,效果图对比: C. 提醒 · 仔细体会: D. 优先级的问题: 二.嵌套路由 引言 · ...

  8. Vue 切换路由后页面回到页面顶部

    Vue 切换路由后页面回到页面顶部 backTop() {window.scrollTo(0, 0)document.body.scrollTop = 0document.documentElemen ...

  9. 【Vue】路由Router嵌套的实现及经典案例

    Vue 中路由在使用的时候 嵌套 使用是非常频繁的,所以本文我们就来通过案例介绍一下嵌套路由的使用. Vue路由嵌套 先来准备一个普通的路由案例: <!DOCTYPE html> < ...

  10. vue二级路由跳转后外部引入js失效问题解决方案

    vue二级路由跳转后外部引入js失效问题解决方案 参考文章: (1)vue二级路由跳转后外部引入js失效问题解决方案 (2)https://www.cnblogs.com/LittleT/p/9077 ...

最新文章

  1. 一文看懂Modbus协议
  2. MySQL番外篇:一条SQL查询语句是如何执行的?
  3. 最新发布 | 2018年度第八届吴文俊人工智能科学技术奖获奖名单公示
  4. 关于JS面向对象、设计模式、以及继承的问题总结
  5. OPenGL实例化绘制、普通绘制说明
  6. 更换mysql_这些被你忽视的MySQL细节,可能会让你丢饭碗!
  7. mysql更新写入数据_七、MySQL插入、更新与删除数据
  8. FreeBSD的功能特点
  9. SpringMVC配置任何类型转换器 Converter(以时间类型为例)
  10. 计算机学院刘彤,刘彤-北京航空航天大学材料科学与工程学院
  11. 如何将UCI数据集转换成Matlab可用格式
  12. linux主机安装sctp协议栈
  13. 数列求和-加强版(C语言)
  14. 个人笔记:kali firefox安装hackbar插件
  15. 谈谈人工智能的罪与罚
  16. 【讲清楚,说明白!】Zabbix企业级自动化监控与无人报警系统--实战演练
  17. MAC下载安装docker
  18. 平面图形原理总结(3):多边形相交
  19. [转]一个手机游戏的服务器架构
  20. 【Axure视频教程】用中继器制作排名图

热门文章

  1. 双目测距理论及其python实现
  2. 用Python写的简易PDF阅读器
  3. java word 分页显示_Java 在Word中插入分页符、分节符
  4. 信号的带宽、传输速率、采样率的关系
  5. 番外4. Python OpenCV 中鼠标事件相关处理与常见问题解决方案
  6. 中国止血分析仪行业市场供需与战略研究报告
  7. 互联网寒冬、裁员,作为程序员的我们,应该如何去应对?
  8. Python学习笔记—— 面向对象3. 继承和多态
  9. delphi技巧--分离汉字和英文字母
  10. 2019互联网寒冬之面试心得