vue 使用 this.$router.push 传参数,接参数的 query或params 两种方法示例

背景:vue项目 使用this.$router.push进行路由跳转时,可以通过query或params参数传递和接收参数。

通过query参数传递参数:

php 复制代码
// 传递参数
this.$router.push({
  path: '/target',
  query: {
    id: 1,
    name: 'John'
  }
});
// 接收参数
this.$route.query.id  // 1
this.$route.query.name  // 'John'

通过params参数传递参数(用于动态路由):

php 复制代码
// 传递参数
this.$router.push({
  name: 'target',
  params: {
    id: 1,
    name: 'John'
  }
});
// 接收参数
this.$route.params.id  // 1
this.$route.params.name  // 'John'

注意事项

query参数通过URL中的查询字符串传递,而params参数通过URL中的路径参数传递。根据你的实际需求和路由配置,选择适合的参数传递方式。

需要注意的是,使用params参数时,要确保目标路由配置中动态路由参数已正确声明。例如:

php 复制代码
// 路由配置
{
  path: '/target/:id',
  name: 'target',
  component: TargetComponent
}
相关推荐
Jonathan Star几秒前
在 JavaScript 中, `Map` 和 `Object` 都可用于存储键值对,但设计目标、特性和适用场景有显著差异。
开发语言·javascript·ecmascript
Bacon8 分钟前
Electron 集成第三方项目
前端
自由日记16 分钟前
css学习9
前端·css·学习
拖拉斯旋风19 分钟前
你不知道的javascript:深入理解 JavaScript 的 `map` 方法与包装类机制(从基础到大厂面试题)
前端·javascript
over69720 分钟前
《JavaScript的"魔法"揭秘:为什么基本类型也能调用方法?》
前端·javascript·面试
该用户已不存在23 分钟前
AI编程工具大盘点,哪个最适合你
前端·人工智能·后端
胖虎26533 分钟前
基于 Vue3+TypeScript+Vant 的评论组件开发实践
vue.js
一头小鹿36 分钟前
【React Native+Appwrite】获取数据时的分页机制
前端·react native
冴羽44 分钟前
这是一个很酷的金属球,点击它会产生涟漪……
前端·javascript·three.js