vue的传参params和query

本文详细介绍了Vue中两种主要的路由传参方式:params传参和query传参。params适用于单个参数的情况,通过路由匹配获取;而query则用于传递多个参数,类似于URL中的查询字符串。文中还对比了两者的使用场景及如何接收这些参数。

vue的路由传参形式

1.params传参

  1. params传参:需要把找一个唯一代表的值来确定产品详情(item.pname)是变量需要用 :号来绑定并且要把他拼接到路径上
    在这里插入图片描述
    2.params传参需要在路径后面用 :+"命名变量"来存值
    在这里插入图片描述
    3.params:通过$route来接收刚刚我们在路径上绑定的id(命名的变量);
    在这里插入图片描述
    2.query传参
  2. query传参:需要用冒号绑定变量(只要是对象就绑),要用name属性来命名路由,query跟的是对象形式
    在这里插入图片描述
    2.query传参:需要在配置name通过name来找路径
    在这里插入图片描述
    3.query传参:通过$route来接收刚刚我们在路径上绑定的id;
    在这里插入图片描述
    一般当我们传多个参数时都选用query传参。
Vue.js React 的路由传参中,`params` `query` 是两种常用的传参方式,它们在功能、使用场景行为上存在显著区别。 ### Vue.js 中的 `params` `query` 1. **动态路由传参params)** `params` 通常用于动态路由传参,通过在路由配置中使用冒号 `:` 来定义参数。例如,`/dongtaoluyou/:id` 表示一个动态路由,`id` 是参数。在跳转时,参数会被拼接到 URL 中,页面刷新后参数不会丢失。这种传参方式适合传递少量的、必需的参数,如详情页的 ID [^3]。 ```javascript this.$router.push("/dongtaoluyou/" + 2313); ``` 2. **Query 传参** `query` 传参是通过 URL 的查询参数(即问号后的内容)来传递信息。它不依赖于路由配置,可以直接通过 `path` `query` 对象进行传参。这种方式适合传递多个可选参数,并且在页面刷新后参数也不会丢失 [^2]。 ```javascript this.$router.push({ path: '/cart', query: { goodsid: 123456 } }); ``` ### React 中的 `params` `query` 1. **Params 传参** 在 React 中,`params` 通常通过动态路由来实现,类似于 Vue.js 的动态路由传参。在定义路由时,使用 `:paramName` 来指定参数,例如 `/article/:id`。跳转时,参数会被嵌入到 URL 中,刷新页面后参数仍然存在 [^5]。 ```jsx <NavLink to={`/article/1`}>文章1</NavLink> ``` 2. **Query 传参** React 中的 `query` 传参方式与 Vue.js 类似,通过 URL 的查询字符串传递参数。这种方式不依赖于路由配置,可以传递多个参数,并且刷新页面后参数也不会丢失 [^1]。 ### 主要区别 - **参数传递方式**:`params` 通常用于动态路由,参数会直接嵌入到 URL 中;而 `query` 通过 URL 的查询字符串传递参数 [^4]。 - **参数可见性**:`params` 的参数在 URL 中是可见的,而 `query` 的参数也是可见的,但通常以键值对的形式出现在 URL 的问号之后 [^2]。 - **刷新行为**:无论是 `params` 还是 `query`,在页面刷新后参数都不会丢失 [^1]。 - **适用场景**:`params` 适合传递少量必需的参数,如 ID;而 `query` 适合传递多个可选参数 [^3]。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值