vue-router传参,在页面刷新后数据格式改变的问题
# vue-router传参,在页面刷新后数据格式改变的问题
vue-router传参,不管是params形式还是query形式传参,在页面刷新后,params和query对象中的属性所对应的属性值都会被浏览器自身强制转换为string类型(这一点与浏览器的sessionStorage和localStorage存储对象,对象会被转为string类型,不谋而合),破环原先属性值的数据类型。
number数据类型:页面刷新后,其类型会转换为
string
类型。那么我们在路由刷新页面,对传递过来的属性值做一次Number()
转换,就是不管页面有没有刷新都做一次Number()
转换;string数据类型:页面刷新后,其类型依然为
string
类型,无需任何操作;boolean数据类型:页面刷新后,其类型会转换为
string
类型。那么我们在路由刷新页面,对传递过来的属性值做一次Boolean()
转换,就是不管页面有没有刷新都做一次Boolean()
转换;undefined数据类型:页面刷新后,其类型依然为
undefined
类型,无需任何操作;null数据类型:页面刷新后,其类型依然为
null
类型,无需任何操作;object数据类型:页面刷新后,其类型会转换为
string
类型。那么我们在路由跳转传参页面对属性值做一次JSON.stringify()
预处理,然后在路由刷新页面对该值进行JSON.parse()
转换即可;
原文链接:select中默认初始值value显示名称,页面刷新显示Id的问题 (this.$route.query刷新后类型改变) (opens new window)
在GitHub上编辑 (opens new window)
上次更新: 2/23/2022, 5:36:03 PM