Vue Router路由hash模式与history模式详细介绍

Vue Router路由hash模式与history模式详细介绍

在Vue.js中,Vue Router是一个常用的路由管理器。Vue Router可以实现单页应用(SPA)的路由功能。在Vue Router中,有两种路由模式:hash模式和history模式。在本文中,我们将详细介绍这两种模式的区别和使用方法。

hash模式

hash模式是Vue Router的默认模式,在URL中使用“#”作为路由路径的锚点标记,不会触发页面的刷新,也不会向服务器发送请求。通过监听URL的变化,从而实现页面的路由切换。在Vue Router中,我们可以通过配置路由的mode参数来设置使用hash模式。

配置方法

const router = new VueRouter({
  mode: 'hash',
  routes: [...]
})

示例

假设我们有两个路由,一个是首页(/),一个是关于我们(/about)。

// main.js
import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'
import Home from './components/Home.vue'
import About from './components/About.vue'

Vue.config.productionTip = false

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    component: Home
  },
  {
    path: '/about',
    component: About
  }
]

const router = new VueRouter({
  mode: 'hash',
  routes
})

new Vue({
  render: h => h(App),
  router
}).$mount('#app')

现在我们在App.vue中添加路由跳转的链接:

<template>
  <div>
    <router-link to="/">Home</router-link>
    <router-link to="/about">About</router-link>
    <router-view></router-view>
  </div>
</template>

在浏览器中输入localhost:8080/#/,可以看到页面显示为Home。点击About的链接,页面会跳转到localhost:8080/#/about,显示为About。

history模式

history模式使用浏览器的history API来实现路由功能,将页面路由信息保存在浏览器的history栈中,可以使用前进、后退按钮切换路由,也可以通过URL直接访问页面。

配置方法

const router = new VueRouter({
  mode: 'history',
  routes: [...]
})

需要注意的是,使用history模式需要服务器端支持,否则会出现404错误。如果要在开发环境中使用history模式,可以使用vue-cli提供的history模式的dev server。启动dev server的方法如下:

npm run dev -- --history

示例

假设我们有两个路由,一个是首页(/),一个是关于我们(/about)。

// main.js
import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'
import Home from './components/Home.vue'
import About from './components/About.vue'

Vue.config.productionTip = false

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    component: Home
  },
  {
    path: '/about',
    component: About
  }
]

const router = new VueRouter({
  mode: 'history',
  routes
})

new Vue({
  render: h => h(App),
  router
}).$mount('#app')

现在我们在App.vue中添加路由跳转的链接:

<template>
  <div>
    <router-link to="/">Home</router-link>
    <router-link to="/about">About</router-link>
    <router-view></router-view>
  </div>
</template>

在浏览器中输入localhost:8080,可以看到页面显示为Home。点击About的链接,页面会跳转到localhost:8080/about,显示为About。

以上是Vue Router路由hash模式与history模式的详细介绍。通过本文的学习,相信你已经掌握了这两种路由模式的使用方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Vue Router路由hash模式与history模式详细介绍 - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • 一文带你掌握JavaScript中的箭头函数

    一文带你掌握JavaScript中的箭头函数 在JavaScript中,箭头函数是一种较新的语言特性。相较于传统的函数声明,箭头函数具有更简洁的语法和更明确的this指向,因此逐渐被广泛使用。本文将详细介绍箭头函数的定义、使用场景、注意事项和示例。 定义 箭头函数是一种没有自己this值,必须获取父级作用域中this值得特殊函数语法。它的语法结构比传统的函数…

    JavaScript 2023年6月10日
    00
  • JS对象与JSON格式数据相互转换

    JS对象与JSON格式数据相互转换是Web开发中非常常见的任务。在以下的攻略中,我提供两种基本的方法帮助你完成这个任务。其中一种使用JavaScript的内置函数,另一种使用第三方库。 1. 使用JavaScript内置函数方法转换 JavaScript提供了两个内置函数 JSON.stringify() 和 JSON.parse() 分别用于将JS对象转换…

    JavaScript 2023年5月27日
    00
  • js调试系列 初识控制台

    JS调试系列——初识控制台 什么是控制台 控制台是浏览器提供的调试工具,可以用来查看JavaScript代码的运行情况,如代码执行顺序,变量的值等。控制台可以输出信息,查看调用堆栈,进行代码地图等操作。Chrome浏览器的控制台是最为强大的。 打开控制台 在Chrome浏览器中,可以通过快捷键 Ctrl + Shift + J 打开控制台。也可以右键页面空白…

    JavaScript 2023年5月27日
    00
  • vue前端路由以及vue-router两种模式实例详解

    Vue前端路由和Vue-Router两种模式实例详解 前置知识 在深入理解本文内容前,你需要掌握以下技术: Vue.js的基础知识 编写和理解Vue组件 熟悉Vue.js中template、script和style标签三者之间的关系 Vue前端路由 前端路由是一种在单页面应用程序(SPA)中切换视图的技术。一般情况下,前端路由的核心技术是修改浏览器url,以…

    JavaScript 2023年6月11日
    00
  • javascript中href和replace的比较(详解)

    JavaScript中href和replace的比较(详解) 在JavaScript中,href和replace方法都可以用来改变当前页面的URL地址,但它们有着不同的用法和效果。本文将详细介绍这两种方法的差异并提供相关示例,以帮助读者更好地理解。 href方法 使用href方法可以通过在当前窗口中打开新的URL地址。该操作会导致当前页面的所有状态丢失,包括…

    JavaScript 2023年6月11日
    00
  • JavaScript高级程序设计 错误处理与调试学习笔记

    下面我将详细讲解“JavaScript高级程序设计 错误处理与调试学习笔记”的完整攻略。 1. 学习目标 学习本篇笔记的目标是了解JavaScript中的错误处理和调试技术。具体包括以下方面: 理解JavaScript中的错误类型; 掌握JavaScript中的错误处理机制; 掌握JavaScript中的调试技术。 2. 错误类型及处理机制 在JavaScr…

    JavaScript 2023年5月27日
    00
  • 常用JS加密编码算法代码第2/2页

    “常用JS加密编码算法代码第2/2页”是一篇介绍常用JS加密和编码算法的文章,其中包含了完整的代码示例。为了更好地理解和使用这些算法,可以按照以下步骤进行操作: 阅读文章,理解各种加密和编码算法的原理和用途。文章中提到了几种常用的算法,包括Base64编码、MD5加密、SHA1加密、AES加密等,在使用这些算法之前,需要先理解其基本原理。 下载代码示例,并在…

    JavaScript 2023年5月20日
    00
  • 原生js实现淘宝首页点击按钮缓慢回到顶部效果

    实现淘宝首页点击按钮缓慢回到顶部效果可以采用原生Javascript,下面是具体的实现步骤: 1. 获取回到顶部按钮以及页面滚动条 首先,在页面中添加“回到顶部”按钮,然后使用JS代码获取该按钮以及页面滚动条的对象: var scrollBtn = document.getElementById(‘scrollBtn’); var scrollTop = d…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部