vue3中关于路由hash与History的设置

yizhihongxing

下面是关于Vue3中路由hash与History的设置的详细攻略:

1. 路由设置

在Vue3中使用路由需要先安装vue-router,使用以下命令进行安装:

npm install vue-router@4

1.1 history模式

如果使用history模式,则路由使用的是浏览器的history.pushStatehistory.replaceState方法,这样路由就是“干净”的URL,可以去除URL中的#符号,例如:

const router = createRouter({
  history: createWebHistory(),
  routes,
})

1.2 hash模式

如果使用hash模式,则路由使用的是浏览器的URL中的#符号,例如:

const router = createRouter({
  history: createWebHashHistory(),
  routes,
})

使用createWebHashHistory()方法来创建hash模式的路由。

2. 设置默认路由

设置默认路由可以让用户在没有输入路由路径时自动跳转到指定页面。

2.1 history模式下设置默认路由

在history模式下设置默认路由需要在路由最后添加一个{path: '*', redirect: '/'}的路由,例如:

const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home,
  },
  {
    path: '/about',
    name: 'About',
    component: About,
  },
  // 设置默认路由
  {
    path: '*',
    redirect: '/',
  },
]

2.2 hash模式下设置默认路由

在hash模式下设置默认路由需要在路由最后添加一个`{path: '/'},例如:

const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home,
  },
  {
    path: '/about',
    name: 'About',
    component: About,
  },
  // 设置默认路由
  {
    path: '/',
  },
]

这里需要注意的是,hash模式下的默认路由不能使用redirect属性,因为hash路由不存在重定向问题。

示例说明

下面给出两个具体的示例:

示例1:使用history模式设置默认路由

// 引入Vue Router
import { createRouter, createWebHistory } from 'vue-router'

// 引入组件
import Home from '@/views/Home.vue'
import About from '@/views/About.vue'

// 创建路由实例
const router = createRouter({
  history: createWebHistory(),
  routes: [
    {
      path: '/',
      name: 'Home',
      component: Home,
    },
    {
      path: '/about',
      name: 'About',
      component: About,
    },
    // 设置默认路由
    {
      path: '*',
      redirect: '/',
    },
  ],
})

// 导出路由
export default router

这个示例演示了如何使用history模式设置默认路由。

示例2:使用hash模式设置默认路由

// 引入Vue Router
import { createRouter, createWebHashHistory } from 'vue-router'

// 引入组件
import Home from '@/views/Home.vue'
import About from '@/views/About.vue'

// 创建路由实例
const router = createRouter({
  history: createWebHashHistory(),
  routes: [
    {
      path: '/',
      name: 'Home',
      component: Home,
    },
    {
      path: '/about',
      name: 'About',
      component: About,
    },
    // 设置默认路由
    {
      path: '/',
    },
  ],
})

// 导出路由
export default router

这个示例演示了如何使用hash模式设置默认路由。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue3中关于路由hash与History的设置 - Python技术站

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

相关文章

  • JavaScript的查询机制LHS和RHS解析

    JavaScript中存在两种类型的查询机制,即左查询(LHS)和右查询(RHS)。这两种查询机制可以帮助我们理解JavaScript变量的赋值过程。下面详细讲解一下这两种查询机制。 LHS查询 LHS查询通常发生在变量被赋值的时候,这种查询的目的是为了找到变量所在的内存地址,当变量所在的内存地址存在时,就可以把该值赋给变量。如果变量所在内存地址在运行时不存…

    JavaScript 2023年5月28日
    00
  • javascript题目,重写函数让其无限相加

    当我们看到“重写函数让其无限相加”这个题目时,第一时间想到的就是递归。递归是指函数直接或间接地调用自身。使用递归可以很方便地实现一个无限相加的函数。 下面是一个实现步骤的完整攻略: 1. 定义函数 首先,我们需要定义一个函数,函数名为add,参数为无限个数字,返回值为一个函数。 function add() { let args = Array.protot…

    JavaScript 2023年6月11日
    00
  • 原生js获取iframe中dom元素–父子页面相互获取对方dom元素的方法

    当在网页中嵌入了一个iframe元素时,有时候需要获取其中的DOM元素或与iframe页面里面的JS代码进行交互,这时需要使用原生Javascript来进行操作。 获取iframe中的DOM元素 获取iframe元素 首先,我们需要获取到iframe元素,这可以通过以下方法来实现: const iframe = document.getElementById…

    JavaScript 2023年6月10日
    00
  • JavaScript数据结构与算法之队列原理与用法实例详解

    JavaScript数据结构与算法之队列原理与用法实例详解 什么是队列? 队列是一种数据结构,可以用来存储一系列元素,支持在队列尾部插入元素,在队列头部删除元素的操作。这种数据结构的特点是:先进先出(First-In-First-Out,简称FIFO),即最先插入队列的元素,也会最先从队列中被删除。 队列的实现 队列可以用数组或链表来实现,这里我们以数组为例…

    JavaScript 2023年5月28日
    00
  • 浅谈js的html元素的父节点,子节点

    当我们在编写 JavaScript 代码时,我们经常需要对 HTML 页面中的元素进行操作,而理解 HTML 元素的父节点和子节点是非常重要的。在本文中,我们将深入讨论这个话题并为您提供完整攻略。 HTML 元素的父节点和子节点 在 HTML 中,父节点表示该节点的上一级节点,而子节点是该节点的下一级节点。例如,如果我们有一个 div 元素,它包含一个 p …

    JavaScript 2023年6月10日
    00
  • javascript 拖动_cookie_ajax等

    JavaScript 是一门非常强大的编程语言,可以支持前端页面的实时交互。其中,拖动、cookie 和 Ajax 是 JavaScript 最为常用的功能之一。下面将详细讲解这些内容的完整攻略。 JavaScript 拖动 通过 JavaScript,可以实现网页元素的拖动效果。具体实现方式如下: 首先,通过 JavaScript 获取需要拖动的元素。 l…

    JavaScript 2023年6月10日
    00
  • 用python找出那些被“标记”的照片

    下面是用Python找出被“标记”的照片的完整攻略。 步骤1:安装依赖库 在使用Python进行图像处理时,需要安装一些依赖库,如OpenCV、Pillow、numpy等。可以使用pip等方式进行安装。 !pip install opencv-python !pip install opencv-contrib-python !pip install Pil…

    JavaScript 2023年5月28日
    00
  • JavaScript中的迭代器和生成器详解

    JavaScript中的迭代器和生成器详解 什么是迭代器? 在 JavaScript 中,迭代器是一种设计模式,用于处理不同类型的数据集合并允许你遍历这些数据集合。迭代器可以存储在变量中,并且可以使用next()方法获取下一个元素,一般会返回一个对象包含两个属性,value和done,分别表示迭代器的当前值和是否已经迭代完成。 迭代器可以使用for…of…

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