vue-router中query取值的坑及解决

 更新时间:2024年08月08日 08:59:48   作者:绝美焦栖  
这篇文章主要介绍了vue-router中query取值的坑及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

vue-router中query取值的坑

问题描述

在使用 $router.push() 时,使用了query,传的是Boolean类型的数据,但是query里面的属性的值都会变成字符串。

this.$router.push({ name:'product', query: {canSee: false} });

query的值是直接从页面URL中取的,而在页面URL上的参数的类型只能是字符串类型。

解决方案

1.在传值之前把要传的参数单独放到一个对象里,在放到query里面,然后进行JSON.stringify()处理,到了目标页面后再进行JSON.parse()处理,还原对象。这种方法的好处是可以一次性处理多个参数,而且适用度高,建议使用这种方法。

2. 传值前不做处理,到了目标页面后再单独对原本为非字符串的数据进行JSON.parse()处理。缺点是字符串类型的数据不能如此处理,要确保该数据不是字符串类型的。局限性大,不推荐适用。

vue-router query,parmas,meta传参

1.query,显示在导航栏?后,相当于get请求传参

this.router.push({path:'/login',query:{ 'redirect':'/home'}})
this.router.push({name:'Login',query:{ 'redirect':'/home'}})

2.parmas,不会显示,相当于post请求传参, 目前测试没有query不行,而且刷新后消失

this.router.push({name:'Login',parmas:{ 'redirect':'/home'}})
this.router.push({name:'Login',query:{ 'redirect':'/home'}},parmas:{ 'redirect':'/home'}})

在vue中使用parmas传参时必须用name跳转,而且必须和query一起传?否则接收不到;或者路由中有设置/:XX来接收这个参数

3.meta,不显示,测试失败

this.router.push({name:'Login',meta:{ 'redirect':'/home'}}) 

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue动态绑定Class的几种常用方式

    Vue动态绑定Class的几种常用方式

    在vue框架开发中,有时候我们需要对元素的样式进行动态控制,比如tab按钮的切换,下面这篇文章主要给大家介绍了关于Vue动态绑定Class的几种常用方式,需要的朋友可以参考下
    2023-03-03
  • vue 3.0 使用ref获取dom元素的示例

    vue 3.0 使用ref获取dom元素的示例

    这篇文章主要介绍了vue 3.0 使用ref获取dom元素,包括vue2.x获取dom和vue3.0获取单个dom,通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • vue移动端屏幕适配详解

    vue移动端屏幕适配详解

    这篇文章主要介绍了vue移动端屏幕适配,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 详解Vue项目中实现锚点定位

    详解Vue项目中实现锚点定位

    这篇文章主要介绍了Vue项目中实现锚点定位,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • vue项目刷新当前页面的三种方式(重载当前页面数据)

    vue项目刷新当前页面的三种方式(重载当前页面数据)

    这篇文章主要介绍了vue项目刷新当前页面的三种方式(重载当前页面数据),本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-01-01
  • vue组件生命周期钩子使用示例详解

    vue组件生命周期钩子使用示例详解

    这篇文章主要为大家介绍了vue组件生命周期钩子使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2022-04-04
  • Vue配置文件中的devServer proxy配置全过程

    Vue配置文件中的devServer proxy配置全过程

    文章介绍了如何在代理服务器中配置axios请求,包括单个接口和多个接口的情况,通过配置proxy,可以将请求转发到不同的后端服务器,并且可以处理跨域请求和路径重写
    2025-12-12
  • vue自定v-model实现表单数据双向绑定问题

    vue自定v-model实现表单数据双向绑定问题

    vue.js的一大功能便是实现数据的双向绑定。这篇文章主要介绍了vue自定v-model实现 表单数据双向绑定的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • vue实现鼠标移入移出事件代码实例

    vue实现鼠标移入移出事件代码实例

    这篇文章主要介绍了vue实现鼠标移入移出事件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • 使用element-ui +Vue 解决 table 里包含表单验证的问题

    使用element-ui +Vue 解决 table 里包含表单验证的问题

    这篇文章主要介绍了使用element-ui +Vue 解决 table 里包含表单验证的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07

最新评论