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

相关推荐
gnip6 小时前
企业级配置式表单组件封装
前端·javascript·vue.js
一只叫煤球的猫7 小时前
写代码很6,面试秒变菜鸟?不卖课,面试官视角走心探讨
前端·后端·面试
excel8 小时前
Three.js 材质(Material)详解 —— 区别、原理、场景与示例
前端
掘金安东尼8 小时前
抛弃自定义模态框:原生Dialog的实力
前端·javascript·github
hj5914_前端新手12 小时前
javascript基础- 函数中 this 指向、call、apply、bind
前端·javascript
薛定谔的算法12 小时前
低代码编辑器项目设计与实现:以JSON为核心的数据驱动架构
前端·react.js·前端框架
Hilaku12 小时前
都2025年了,我们还有必要为了兼容性,去写那么多polyfill吗?
前端·javascript·css
yangcode12 小时前
iOS 苹果内购 Storekit 2
前端
LuckySusu12 小时前
【js篇】JavaScript 原型修改 vs 重写:深入理解 constructor的指向问题
前端·javascript
LuckySusu12 小时前
【js篇】如何准确获取对象自身的属性?hasOwnProperty深度解析
前端·javascript