使用vue router需要注意的点

Vue Router 支持多种历史模式来管理应用的导航和URL状态。

主要的两种模式是 hash 模式和 history 模式。每种模式都有其特定的用途和适用场景。

1. Hash 模式

这是 Vue Router 默认使用的模式。在这种模式下,URL 中会包含一个 # 符号,后面跟着表示当前路由的路径。这种模式利用了HTML5的hashchange事件来监听URL中的hash变化,从而进行页面的切换。

bash 复制代码
示例路径:

当前页面是主页时,URL 可能是 http://example.com/#/
当用户访问关于页面时,URL 变为 http://example.com/#/about

2. History 模式

在 history 模式下,URL 看起来更像传统的多页面应用,没有 # 符号。这种模式使用了HTML5的History接口,可以实现更干净的URL,但是需要后端配置来处理这些URL,否则直接访问这些URL可能会导致404错误。

bash 复制代码
示例路径:

当前页面是主页时,URL 可能是 http://example.com/
当用户访问关于页面时,URL 变为 http://example.com/about

配置示例

假设你正在使用 Vue Router,并且想要设置 history 模式,你可以这样配置:

javascript 复制代码
import Vue from 'vue';
import VueRouter from 'vue-router';

Vue.use(VueRouter);

const routes = [
  { path: '/', component: HomeComponent },
  { path: '/about', component: AboutComponent }
];

const router = new VueRouter({
  mode: 'history',
  routes // (缩写) 相当于 routes: routes
});

export default router;

注意事项

Hash 模式 不需要任何额外的服务器配置,因为所有的页面都指向同一个index.html文件。

History 模式 需要服务器做特殊配置,以确保所有未知的路由都返回index.html文件,从而让前端路由接管。

相关推荐
David凉宸1 分钟前
vue2与vue3的差异在哪里?
前端·javascript·vue.js
Irene19912 分钟前
JavaScript字符串转数字方法总结
javascript·隐式转换
笔画人生6 分钟前
Cursor + 蓝耘API:用自然语言完成全栈项目开发
前端·后端
AC赳赳老秦22 分钟前
外文文献精读:DeepSeek翻译并解析顶会论文核心技术要点
前端·flutter·zookeeper·自动化·rabbitmq·prometheus·deepseek
小宇的天下29 分钟前
Calibre 3Dstack --每日一个命令day18【floating_trace】(3-18)
服务器·前端·数据库
毕设源码-钟学长35 分钟前
【开题答辩全过程】以 基于web技术的酒店信息管理系统设计与实现-为例,包含答辩的问题和答案
前端
css趣多多43 分钟前
this.$watch
前端·javascript·vue.js
Code小翊1 小时前
JS语法速查手册,一遍过JS
javascript
干前端1 小时前
Vue3虚拟滚动列表组件进阶:不定高度及原理分析!!!
前端·前端组件
子春一1 小时前
Flutter for OpenHarmony:构建一个 Flutter 天气卡片组件,深入解析动态 UI、响应式布局与语义化设计
javascript·flutter·ui