Vue路由中,history和hash两种模式有什么区别

简介: Vue路由中,history和hash两种模式有什么区别

hash【主要原理就是onhashchange()事件】

  • hash模式是开发中默认的模式,它的URL带着一个#
  • hash值会出现在URL地址里面,但是不会出现在http请求中,对后端完全没有影响,当然也不会重新请求页面
  • 低版本的浏览器支持这种模式的路由
  • hash路由被称为是前端路由,已经成为SPA的标配

history模式

  • history模式的URL中没有#,它是传统路由分发模式(就是用户输入一个url时候,服务器会接受这个请求,并解析这个URL,做出相应的逻辑处理)
  • hash模式更加好看,例如/id这种
  • history模式需要后台配置支持,如果后台没有正确配置,访问时会返回404
  • 修改历史状态:新增pushState()和replaceState()方法,这个方法应用于浏览器的历史记录栈,提供对历史记录进行修改的功能,只是当他们进行修改的时候,虽然修改url,但浏览器不会立即向后端发送请求,如果要做到改变url但又不刷新页面的效果,就需要前端用上两个API
  • 切换历史状态:forward() back() go(),前进,后退,跳转
  • 刷新页面的时候,如果没有相应的路由或资源,就会刷出404



相关文章
|
2天前
|
JavaScript 编译器 API
vue2和vue3区别
vue2和vue3区别
12 4
|
7天前
|
JavaScript 程序员 网络架构
vue路由从入门到进阶 --- 声明式导航详细教程
vue路由从入门到进阶 --- 声明式导航详细教程
vue路由从入门到进阶 --- 声明式导航详细教程
|
7天前
|
资源调度 JavaScript UED
vue路由的基础知识总结,vueRouter插件的安装与使用
vue路由的基础知识总结,vueRouter插件的安装与使用
|
14天前
|
缓存 JavaScript
一文彻底学会Vue路由
Vue Router简介,包括基本使用、嵌套路由、参数传递和路由守卫。首先,通过`npm i vue-router@3`安装,然后在`main.js`引入并应用。配置路由时,创建VueRouter实例,定义如`/home`、`/about`等路径及其对应组件。使用`<router-link>`进行切换,`<router-view>`展示组件。嵌套路由通过`children`配置多级路径,参数传递可使用`query`或`params`。路由守卫分为全局、独享和组件内三种,用于控制访问权限。
25 1
一文彻底学会Vue路由
|
21天前
|
JavaScript 网络架构 开发者
阿珊解说Vue中`$route`和`$router`的区别
阿珊解说Vue中`$route`和`$router`的区别
|
2天前
|
JavaScript
vue的生命周期
vue的生命周期
11 3
|
2天前
|
JavaScript 前端开发
vue的生命周期
vue的生命周期
12 2
|
2天前
|
缓存 JavaScript
什么是vue的计算属性?为什么使用?怎么使用?举例说明
什么是vue的计算属性?为什么使用?怎么使用?举例说明
|
2天前
|
缓存 JavaScript 前端开发
Vue基础
Vue基础
13 2
|
2天前
|
JavaScript 前端开发 API
什么是vue
什么是vue
11 4