0

0

如何配置Vue3的路由和进行路由跳转并传递参数?

王林

王林

发布时间:2023-05-09 23:28:16

|

6583人浏览过

|

来源于亿速云

转载

    1、安装路由

    npm i vue-router

    2、编写需要展示的路由

    在src目录下创建pages文件夹,里面创建两个vue文件命名为student.vue,person.vue

    vue3路由配置及路由跳转传参的方法是什么

    分别编写两个vue文件

    student.vue和person.vue

    
     
    
     
    
    
     
    
     
    

    3、配置路由

    在src目录下配置router.js文件

    立即学习前端免费学习笔记(深入)”;

    import { createRouter,createWebHistory } from "vue-router";
    const router=createRouter({
        history:createWebHistory(),
        routes:[
            {
                component:()=>import('../pages/person.vue'),
                name:'person',
                path:'/person'
            },
            {
                component:()=>import('../pages/student.vue'),
                name:'student',
                path:'/student'
            },
            {
                //实现路由重定向,当进入网页时,路由自动跳转到/student路由
                redirect:'/student',
                path:'/'
            }
        ]
    })
    export default router

    3、使用路由

    在main.js中使用路由

    import { createApp } from 'vue'
    import App from './App.vue'
    import router from './router'
     
    createApp(App).use(router).mount('#app')

    在app.vue中进行路由展示,使用router-link进行路由跳转,to代表跳转到哪个路由

    
     
    
    

    效果如下图所示,点击(到student路由)或(到person路由)会进行路由跳转

    vue3路由配置及路由跳转传参的方法是什么

    4、編程式路由

    声明式路由通过router-link进行路由跳转,編程式路由通过函数实现

    修改app.vue,vue3使用的是组合式API,需要引入

    要引入useRouter,useRoute,还要const router=useRouter()const route=useRoute()
    
     
    
    

    通过router.push进行路由跳转

    路由之间用router路由器,当前路由使用toute路由

    结果如下图所示,实现編程式路由跳转

    vue3路由配置及路由跳转传参的方法是什么

     如果在配置路由时没有设置别名,需要通过router.push配置对象进行跳转

    const toStudent=()=>{
      router.push({
        path:'/student'
      })
    }
    const toPerson=()=>{
      router.push({
        path:'/person'
      })
    }

    5、路由传参

    5、1query参数传递

    向student路由传递id,name

    const toStudent=()=>{
      router.push({
        path:'/student',
        query:{
          id:1,
          name:'张三'
        }
      })
    }

    student路由接收query参数

    
     
    

    效果如下图所示

    vue3路由配置及路由跳转传参的方法是什么

    Wegic
    Wegic

    AI网页设计和开发工具

    下载

    5、2传递params参数 

    假设向person路由传递params参数,要在路由配置时进行修改

    params传参需要使用name进行指定路由

    const toPerson=()=>{
      router.push({
        name:'person',
        params:{
          keyword:2
        }
      })
    }

    同时在路由配置需要修改,假设传递的是keyword,

    需要在path使用占位符加关键字

    ?表示可传可不传

    {
          component:()=>import('../pages/person.vue'),
          name:'person',
          path:'/person/:keyword?'
    },

    在person.vue中接收params参数

    
     
    

    效果如下所示

    vue3路由配置及路由跳转传参的方法是什么

    6、子路由配置

    给student路由添加子组件(stu1,stu2组件)

    vue3路由配置及路由跳转传参的方法是什么

    子组件的path不带 /  

    {
                component:()=>import('../pages/student.vue'),
                name:'student',
                path:'/student',
                children:[
                    {
                        path:'stu1',
                        name:'stu1',
                        component:()=>import('../pages/stu1.vue')
                    },
                    {
                        path:'stu2',
                        name:'stu2',
                        component:()=>import('../pages/stu2.vue')
                    },
                    {
                        path:'',
                        component:()=>import('../pages/stu1.vue')
                    }
                ]
            }

    编写stu1组件

    
     
    
     
    

    编写stu2组件

    
     
    
     
    

     在student组件进行子组件展示

    
     
    

    通过使用router-link进行路由跳转,也可以通过編程式路由跳转

    to="/student/stu1"  需要使用完整路径进行跳转

    效果展示

    vue3路由配置及路由跳转传参的方法是什么

    相关文章

    路由优化大师
    路由优化大师

    路由优化大师是一款及简单的路由器设置管理软件,其主要功能是一键设置优化路由、屏广告、防蹭网、路由器全面检测及高级设置等,有需要的小伙伴快来保存下载体验吧!

    下载

    相关标签:

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

    相关专题

    更多
    c语言const用法
    c语言const用法

    const是关键字,可以用于声明常量、函数参数中的const修饰符、const修饰函数返回值、const修饰指针。详细介绍:1、声明常量,const关键字可用于声明常量,常量的值在程序运行期间不可修改,常量可以是基本数据类型,如整数、浮点数、字符等,也可是自定义的数据类型;2、函数参数中的const修饰符,const关键字可用于函数的参数中,表示该参数在函数内部不可修改等等。

    519

    2023.09.20

    js正则表达式
    js正则表达式

    php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

    506

    2023.06.20

    js获取当前时间
    js获取当前时间

    JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

    240

    2023.07.28

    js 字符串转数组
    js 字符串转数组

    js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

    248

    2023.08.03

    js是什么意思
    js是什么意思

    JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

    5216

    2023.08.17

    js删除节点的方法
    js删除节点的方法

    js删除节点的方法有:1、removeChild()方法,用于从父节点中移除指定的子节点,它需要两个参数,第一个参数是要删除的子节点,第二个参数是父节点;2、parentNode.removeChild()方法,可以直接通过父节点调用来删除子节点;3、remove()方法,可以直接删除节点,而无需指定父节点;4、innerHTML属性,用于删除节点的内容。

    470

    2023.09.01

    js截取字符串的方法
    js截取字符串的方法

    js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

    205

    2023.09.04

    Js中concat和push的区别
    Js中concat和push的区别

    Js中concat和push的区别:1、concat用于将两个或多个数组合并成一个新数组,并返回这个新数组,而push用于向数组的末尾添加一个或多个元素,并返回修改后的数组的新长度;2、concat不会修改原始数组,是创建新的数组,而push会修改原数组,将新元素添加到原数组的末尾等等。本专题为大家提供concat和push相关的文章、下载、课程内容,供大家免费下载体验。

    217

    2023.09.14

    桌面文件位置介绍
    桌面文件位置介绍

    本专题整合了桌面文件相关教程,阅读专题下面的文章了解更多内容。

    0

    2025.12.30

    热门下载

    更多
    网站特效
    /
    网站源码
    /
    网站素材
    /
    前端模板

    精品课程

    更多
    相关推荐
    /
    热门推荐
    /
    最新课程
    Vue3.x 工具篇--十天技能课堂
    Vue3.x 工具篇--十天技能课堂

    共26课时 | 1.4万人学习

    Vue3.x 核心篇--十天技能课堂
    Vue3.x 核心篇--十天技能课堂

    共30课时 | 1.4万人学习

    Vue3.x新特性篇--十天基础课堂
    Vue3.x新特性篇--十天基础课堂

    共20课时 | 1.1万人学习

    关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送

    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号