当前位置: 首页 > news >正文

Vue路由的模式和原理

一、hash模式(默认)

使用URL的hash来模拟一个完整的URL,当URL发生改变时不会向服务器发起请求。# 和其后面的字符称为hash,可通过 window.location.hash 获取。当hash改变会触发(包括浏览器的前进、后退)会触发window.location.hash值的变化,从而触发hashChange事件,会创建hashHistory对象

  • hashHistory.push()   将新的路由添加到浏览器历史记录栈的顶部
  • hasHistory.replace() 替换到当前栈

二、history模式

去掉了#号。利用了 HTML5新增的API由pushSate和replaceSate来完成URL的跳转,无需重新加载页面也不会向服务器发起请求。若手动点击刷新按钮或在地址栏输入完整URL才会向服务器发起请求,需要后端配合将所有访问都指向 index.html,否则会导致 404 错误。在点击浏览器后退按钮或js调用forward()、back()、go()时会触发popstate事件。

  • history.pushSate(object, title, url)  在浏览器历史记录栈中添加一条记录
  • history.replaceSate(object, title, url)  修改History对象的当前记录
  • history.state  可得到当前页的state信息

相同:都可以用作SPA单页的实现,不向服务器发起请求,动态渲染页面。

不相同:history模式访问相同的url照样会向浏览器历史记录添加一条路由,而hash不会添加。

三.abstract 路由模式(了解即可)

适用于所有JavaScript环境,例如服务器端使用Node.js。如果没有浏览器API,路由器将自动被强制进入此模式。

http://www.lryc.cn/news/342881.html

相关文章:

  • 在K8S中,静态、动态、自主式Pod有何区别
  • 【Three.js基础学习】15.scroll-based-animation
  • ubantu安装mysql
  • 注意!华为HCIP-Datacom认证考试题有变化!
  • 你是我的荣耀 | 林先生:从酷爱数学到毕业走向数据分析岗位
  • 操作系统真象还原-bochs安装
  • windows平台安装labelme
  • 微服务之SpringCloud AlibabaSeata处理分布式事务
  • 2005-2021年全国各地级市生态环境注意力/环保注意力数据(根据政府报告文本词频统计)
  • 熟悉这些道理可以让人更好地应对各种挑战和困难。
  • AI去衣技术在动画制作中的应用
  • 卷积神经网络要点和难点实际案例和代码解析
  • initramfs及rpm/dracut操作
  • Kafka 2.13-3.7.0 在 Windows 上的安装与配置指南
  • C++ 顺序线性表的功能
  • C++面经 每日一问(二)
  • 最新版Ceph( Reef版本)块存储简单对接k8s
  • Vue生命周期都有哪些?
  • 景源畅信:个人抖音小店怎么开通?
  • python学习笔记B-16:序列结构之字典--字典的遍历与访问
  • 《QT实用小工具·四十八》趣味开关
  • QML进阶(十四) Model-View-Delegate视图框架
  • word:三线表的绘制【攻略】
  • 嵌入式物联网系统软硬件基础知识大全(2)
  • Origin拟合EIS(电化学阻抗谱),怎么出来圆圈
  • Android APP转成launcher
  • 【副本向】Lua副本逻辑
  • ROS机器人实用技术与常见问题解决
  • Linux学习之IP协议
  • Python Dash库:一个Web应用只需几行代码