uniapp路由传参存在数据类型失真的问题

javascript 复制代码
export default {
  methods: {
    jump() {
      // 通过params传参
      this.$Router.push({name: 'demo', params: {
      	number:1,
        name: '123',
        value: null
      }})
    }
  }
}

目标模块接收参数:

javascript 复制代码
export default {
  onLoad() {
    // 获取参数
    const {number,name, value} = this.$Route.query
    console.log(number,name,value) // '1', '123', 'undefined'
  }
}

这时发现,目标模块接收到的参数都会变成字符串类型,并且null值会变成字符串的undefined;

解决以上问题,可以将传递的参数构造成一个嵌套对象,如用一个data属性来装填我们的参数:

javascript 复制代码
export default {
  methods: {
    jump() {
      // 通过params传参
      this.$Router.push({
        name: 'demo', 
        params: {
          data: {
            number:1,
        	name: '123',
        	value: null
          }
        }
      })
    }
  }
}
相关推荐
张可爱3 分钟前
Git 提示nothing to commit, working tree clean
前端
WaywardOne4 分钟前
二.iOS内存管理
前端·ios·面试
剑神一笑26 分钟前
从 JSON.parse 到树形视图:实现一个在线 JSON 格式化工具
前端·javascript·json
淸湫36 分钟前
JavaScript常用正则表达式大全
前端·javascript
脱缰胖虎37 分钟前
vue3+lodash+ts+tailwin 实现多行文本的展开收起代码(支持渲染html)
前端·vue.js
知了清语40 分钟前
我是怎么用 GPT-5.5 分析一个陌生项目源码的
前端
We་ct42 分钟前
LeetCode 64. 最小路径和:动态规划入门实战
开发语言·前端·算法·leetcode·typescript·动态规划
SparkleN.1 小时前
mini-agent四个问题完善
前端·chrome·github
Dxy12393102161 小时前
Python设置Excel表格边框样式:从基础到高级
前端·python·excel
布列瑟农的星空1 小时前
tree shaking为什么失效
前端