-
vue-router传参,不管是
params
形式还是query
形式传参,在页面刷新后,params
和query
对象中的属性所对应的属性值都会被浏览器自身强制转换为string
类型(这一点与浏览器的sessionStorage
和localStorage
存储对象,对象会被转为string
类型,不谋而合),破环原先属性值的数据类型。下面为6种数据类型属性值的解决方法:
1.number数据类型:页面刷新后,其类型会转换为`string`类型。那么我们在路由刷新页面,对传递过来的属性值做一次`Number()`转换,就是不管页面有没有刷新都做一次`Number()`转换; 2.string数据类型:页面刷新后,其类型依然为`string`类型,无需任何操作; 3.boolean数据类型:页面刷新后,其类型会转换为`string`类型。那么我们在路由刷新页面,对传递过来的属性值做一次`Boolean()`转换,就是不管页面有没有刷新都做一次`Boolean()`转换; 4.undefined数据类型:页面刷新后,其类型依然为`undefined`类型,无需任何操作; 5.null数据类型:页面刷新后,其类型依然为`null`类型,无需任何操作; 6.object数据类型:页面刷新后,其类型会转换为`string`类型。那么我们在路由跳转传参页面对属性值做一次`JSON.stringify()`预处理,然后在路由刷新页面对该值进行`JSON.parse()`转换即可;
vue-router路由传参,页面刷新,数据类型改变
最新推荐文章于 2024-07-25 09:00:00 发布