当前位置:首页 > 技术文章 > 正文内容

Vue.js 3.2 中 useRouter 和 useRoute 的用法详解

zonemu2个月前 (07-26)技术文章20

介绍

Vue.js 是一款流行的前端框架,由于其易用性和灵活性,在开发中得到了广泛的应用。而在 Vue.js 3.2 中,新增了许多 Composition API,其中 useRouter 和 useRoute 可以用于路由管理,使得前端路由开发更加方便。

useRouter 的用法

在前端开发中,我们经常需要程序处理用户的路由导航,这时候就需要用到 useRouter。它是一个用于获取当前路由实例的函数,我们可以调用这个函数来获取路由实例,然后进行路由导航。

useRoute 的用法

除了需要导航路由之外,我们还需要获取一些路由信息,这时候就需要用到 useRoute。它是一个用于获取当前路由对象的函数,我们可以调用这个函数来获取路由的参数、查询参数等信息。

安装路由

npm install vue-router

引入路由

import { useRouter, useRoute } from 'vue-router'

定义变量

const $router = useRouter()  // 这是路由跳转的
const $route = useRoute()  // 用于接收路由参数的 

使用

(1)、路由跳转($router)

方式一:

$router.push('/add?name=12&age=12') // add/是要跳转的路由  name、age是参数

方式二:

$router.push({path: '/add', query: {
    name: "12",
    age: 12
}})

(2)、获取参数

const name = route.query.name  // 获取路由的name参数值
const age = route.query.age  // 获取路由的age参数值

在上面的代码中,我们首先导入了 vue-router 中的 useRoute,然后在 setup 函数中调用了这个函数。最后,我们返回了一个对象,这个对象包含了当前路由对象中的完整路径、路由参数、查询参数等信息。

总结

useRouter 和 useRoute 是 Vue.js 3.2 中新增的两个用于路由管理的 Composition API。 useRouter 用于获取路由实例。而 useRoute 用于获取当前路由对象。使用这两个 API,我们可以更加方便地管理前端路由,提高开发效率。

参考文献

  • Vue Router: Composition API<br>https://next.router.vuejs.org/guide/advanced/composition-api.html

相关文章

Linux之父:Linux内核5.8是“我们有史以来最大的发行版之一”

Linux内核负责人Linus Torvalds对Linux内核版本5.8的第一个候选发布版本(rc1)看得出来还是挺满意的,该版本包含80万行新代码行和超过14,000个更改的文件,占内核文件检修的...

微软的Linux发行版终于加入了对XFS根文件系统的支持

当许多Linux发行版在评估新的根文件系统选项或甚至像OpenZFS这样的特性,微软内部Linux发行版到本月才开始支持XFS作为根文件系统选项。随着这个月对微软内部Linux发行版CBL-Marin...

gitlab简单搭建与应用(gitlab怎么用)

一、gitlab1、简介GitLab是利用Ruby on Rails一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。与Github类似,GitLab...

使用GitLab实现CICD(gitlab配置cicd)

GitLab CI/CD 是一个内置在GitLab中的工具,用于通过持续方法进行软件开发:Continuous Integration (CI) 持续集成Continuous Delivery (C...

解决GitLab报错:not allowed to force push code to a protected branch

当 force push 代码的时候,可能会遇到如下错误:You are not allowed to force push code to a protected branch on this pr...

K8s 的 Namespace 到底解决了什么问题?

在 Kubernetes 的世界里,资源调度、服务编排以及自动化运维构成了它强大的基础架构能力。但随着集群规模的扩大和团队协作复杂度的提升,仅靠原始的资源管理手段已经难以支撑多租户或大型项目的管理需求...