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

下面是关于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日

相关文章

  • jQuery Validate表单验证入门学习

    jQuery Validate表单验证入门学习 简介 jQuery Validate是一个基于jQuery的表单验证插件,它能够快速方便地实现表单验证功能,提高用户输入数据的准确性。 安装 在使用jQuery Validate进行表单验证前,首先需要引入jQuery库和jQuery Validate插件,可以在HTML文件中通过CDN或下载本地文件来引入。 …

    JavaScript 2023年6月10日
    00
  • 解决火狐浏览器下JS setTimeout函数不兼容失效不执行的方法

    当我们使用JS的setTimeout函数在火狐浏览器下出现不兼容失效不执行的问题时,可以使用以下两种方法进行解决: 方法一:使用匿名函数替代字符串函数 在setTimeout函数中传入的字符串函数在Chrome和其他浏览器中可以正常执行,但是在火狐浏览器中则可能因为严格模式下的限制而不能正常工作。 // 无法在火狐浏览器中正常执行 setTimeout(‘a…

    JavaScript 2023年6月11日
    00
  • 原生js开发的日历插件

    原生JS开发日历插件的完整攻略包含以下几个步骤: 1. 确定需求和功能 在开发日历插件之前,我们需要确定该插件所需实现的功能和需求,如:显示当前日历、搜索指定日期、显示日程安排等等。 2. 设计日历插件的界面 根据我们的需求和功能,我们可以开始设计日历插件的整体界面和交互效果。可以考虑使用HTML/CSS来实现,同时要考虑兼容性和响应式设计。 3. 实现日历…

    JavaScript 2023年6月11日
    00
  • JS实现的哈夫曼编码示例【原始版与修改版】

    下面我将详细讲解一下“JS实现的哈夫曼编码示例【原始版与修改版】”的完整攻略,包含了两个示例。 哈夫曼编码简介 哈夫曼编码也叫霍夫曼编码,是一种基于变长编码的编码方式。它采用前缀编码的方式,即每个字符的编码都不是其他字符编码的前缀,保证解码的唯一性。哈夫曼编码常被用于数据的压缩和传输,例如常见的压缩文件格式gzip、zip等,以及在网络通信中的数据传输。 原…

    JavaScript 2023年5月19日
    00
  • Microsoft Flow | 微信 | LDP 整合开发

    我们在使用自己的企业应用平台时,经常会遇到以下场景: 场景1 业务系统的通知太多,希望收到通知时同步发送企业微信来随时查看。 场景2 需要和其他ERP、BI、CRM等系统对接。 通常的解决方案是自行开发一套程序来实现平台到微信的同步功能。 如果这样做,我们就需要域名空间,要学会搭建web服务器,要github备份维护代码,要当心漏洞被攻击,要编写复杂的代码。…

    JavaScript 2023年4月18日
    00
  • js使用Replace结合正则替换重复出现的字符串功能示例

    当我们需要对字符串进行批量操作时,JavaScript中的replace()方法结合正则表达式可以轻松地实现此功能。在进行大规模字符串处理时这个方法非常的有用。 Replace方法的基础使用 replace()方法是针对一个字符串中的某些内容进行替换操作的。基本的用法是:使用一个字符串作为参数(第一个参数),该字符串中包含需要查找的内容,并通过另一个字符串(…

    JavaScript 2023年5月28日
    00
  • 一文详解JavaScript闭包典型应用

    一、JavaScript闭包基础概念 闭包指的是函数内部能够访问其外部作用域的一种机制。简单来说,闭包就是一个函数引用了其包含作用域中的变量(即使在该函数外部调用时也能够访问这些变量)。通常,一个函数执行完毕后,其内部变量将会释放,但如果该函数内部存在闭包,则这些变量仍然会被保存。 二、闭包的经典应用 实现函数记忆 函数记忆是一种用来缓存函数结果的技术。它可…

    JavaScript 2023年6月10日
    00
  • JS作用域链详解

    JS作用域链详解 JavaScript采用词法作用域,也就是变量的作用域在定义时就已经确定了。而在JavaScript中,作用域可以形成一个链式结构,这被称为作用域链。在这个链结构中,每一个函数都有自己的作用域,如果一个变量在当前作用域中未定义,则会沿着作用域链向上查找,直到查找到该变量为止,或者到达全局作用域。 作用域链的构成 JavaScript中的作用…

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