Vue(Vue2+Vue3)——68.路由的params参数

简介: Vue(Vue2+Vue3)——68.路由的params参数

68 路由的params参数


路由传参是不只是有query参数,也有params参数,两者写法基本一致,都是分为字符串和对象的写法


携带params参数


如果直接这样使用params参数进行拼接,那么肯定是不行的,虽然自己知道前三个是路由,后面两个才是参数,但是系统并不知道,所以需要麻烦点,在路由配置里面


声明params参数


配置路由声明接收params参数

找到配置这个组件的地方,在对应的组件后使用占位符声明接收params参数


使用params参数


可以看到,在$route里面的params中,看到了传递的params参数

所以获取数据的时候,就可以使用$route.params获取了

现在传参的是死的数据,我们借助表达式传递,和query一样,通用分为字符串和对象写法


字符串写法



对象写法



对象写法的一个坑


特别注意:路由携带params参数时,若使用to的对象写法,则不能使用path配置项,必须使用name配置!但是如果使用query,就没有这个限制

它不会报错,但是相关路由会消失跳转不了


总结


1 配置路由,声明接收params参数

{
        path:'/home',
        component:Home,
        children:[
                {
                        path:'news',
                        component:News
                },
                {
                        component:Message,
                        children:[
                                {
                                        name:'xiangqing',
                                        path:'detail/:id/:title', //使用占位符声明接收params参数
                                        component:Detail
                                }
                        ]
                }
        ]
}

2 传递参数

<!-- 跳转并携带params参数,to的字符串写法 -->
<router-link :to="/home/message/detail/666/你好">跳转</router-link>
<!-- 跳转并携带params参数,to的对象写法 -->
<router-link 
        :to="{
                name:'xiangqing',
                params:{
                   id:666,
            title:'你好'
                }
        }"
>跳转</router-link>

特别注意:路由携带params参数时,若使用to的对象写法,则不能使用path配置项,必须使用name配置!

3 接收参数:

$route.params.id
$route.params.title
相关文章
|
1天前
|
JavaScript
Vue学习之--------路由的query、params参数、路由命名(3)(2022/9/5)
这篇文章详细介绍了Vue路由中的query参数、命名路由、params参数以及props配置的使用方式,并通过实际项目案例展示了它们在开发中的应用和测试结果,同时解释了`<router-link>`的`replace`属性如何影响浏览器历史记录。
Vue学习之--------路由的query、params参数、路由命名(3)(2022/9/5)
|
10天前
|
JavaScript 前端开发 搜索推荐
Vue 路由的hash模式和history模式有什么区别?
在Vue.js框架中,路由管理是单页面应用(SPA)不可或缺的功能。Vue 路由提供了两种模式:hash模式和history模式,这两种模式主要负责处理URL的变更而无需重新加载整个页面,实现前端路由的功能。
56 19
|
5天前
|
JavaScript
Vue中router路由的使用、router-link的使用(在项目中的实际运用方式)
这篇文章介绍了Vue中router路由和router-link的使用方式,包括router配置、router-link在模板中的使用,以及实现的导航菜单和页面路由效果。
Vue中router路由的使用、router-link的使用(在项目中的实际运用方式)
|
18天前
|
SQL 开发框架 前端开发
基于SqlSugar的开发框架循序渐进介绍(29)-- 快速构建系统参数管理界面-Vue3+ElementPlus
基于SqlSugar的开发框架循序渐进介绍(29)-- 快速构建系统参数管理界面-Vue3+ElementPlus
|
JavaScript 网络架构
Vue路由query 和 params 传参的区别
Vue路由query 和 params 传参的区别
249 0
Vue路由query 和 params 传参的区别
|
3天前
|
JavaScript
Vue中如何设置在执行删除等危险操作时给用户提示(二次确认后执行对应的操作)
这篇文章介绍了在Vue项目中如何实现执行删除等危险操作时的二次确认机制,使用Element UI的`el-popconfirm`组件来弹出确认框,确保用户在二次确认后才会执行删除操作。
Vue中如何设置在执行删除等危险操作时给用户提示(二次确认后执行对应的操作)
|
3天前
|
JavaScript
如何创建一个Vue项目(手把手教你)
这篇文章是一篇手把手教读者如何创建Vue项目的教程,包括使用管理员身份打开命令行窗口、找到存放项目的位置、通过vue-cli初始化项目、填写项目信息、进入项目目录、启动项目等步骤,并提供了一些常见第三方库的引入方法。
如何创建一个Vue项目(手把手教你)
|
4天前
|
前端开发
StringBoot+Vue实现游客或用户未登录系统前、可以浏览商品等信息、但是不能购买商品或者加入购物车等操作。登录系统显示用户的登录名(源码+讲解)
这篇文章介绍了使用StringBoot+Vue实现用户登录状态判断的方法,包括前端加载用户信息和后端设置session的源码示例。
|
4天前
|
JavaScript 编译器
成功解决:Module build failed: Error: Vue packages version mismatch
这篇文章记录了解决Vue项目中遇到的"Module build failed: Error: Vue packages version mismatch"错误的步骤,原因是项目中Vue依赖的版本不一致,解决方法是删除`node_modules`后重新安装指定版本的Vue和`vue-template-compiler`,确保版本匹配,最终成功运行项目。
成功解决:Module build failed: Error: Vue packages version mismatch
|
4天前
|
JavaScript
在Vue中使用Avue、配置过程以及实际应用
这篇文章介绍了作者在Vue项目中集成Avue组件库的完整过程,包括安装、配置和实际应用,展示了如何利用Avue实现动态表单和数据展示的功能。
在Vue中使用Avue、配置过程以及实际应用