使用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文件,从而让前端路由接管。

相关推荐
xieter5 小时前
【硬核实战】React 19 useFormStatus Returning False? I Built a SubmitButton That Fixes It (2026-10-03)
前端·javascript
雪芽蓝域zzs6 小时前
第6节:远程搜索弹窗(remote 模式),弹窗滚动加载分页
vue.js·elementui
Data analyse4567 小时前
Cookie过期引发UV上涨的复核方法
服务器·前端·数据分析·uv
paopaokaka_luck7 小时前
非遗文物数字化小程序(AI非遗问答、ONNX图像识别、协同过滤推荐、ECharts数据分析、非遗知识浏览与互动、文创商城订单闭环、文化活动报名签到、社区交流)
javascript·spring boot·mysql·数据分析·echarts·mybatis
Highcharts.js7 小时前
图表开发实战总结| 7 条“黄金法则”与“性能铁律”
前端·javascript·vue.js·编辑器·时序数据库·highcharts
Helix2507 小时前
Electron、WebView 框架与 HTA 对比:桌面应用选型、安全性与现代替代方案
前端·javascript·electron·webview·vbscript·hta·本地html应用
Ikalus19887 小时前
三套 API 都告诉我成功了,浏览器一个字都没收到
javascript
开开心心就好7 小时前
办公软件卸载不干净?专用工具一键清残留
java·前端·人工智能·智能手机·kafka·excel·memcache
Ikalus19887 小时前
计数器停在 0,我差点把一篇空摘要发出去
javascript
静默回滚7 小时前
图片能显示,画进canvas却空白:像素面积上限
前端