序列化Vue data 数据时,对象属性缺失

基于Vue2的Uni-app项目
如下两个打印语句,一个是直接打印当前属性,一个输出当前对象的json字符串

img


问题:
直接输出对象,对象属性位置信息是有值的,但是json序列化之后却没有值了

img


是什么原因?疑惑不解,是由什么配置没有开启吗?

这是因为Vue中的数据为双向绑定,当直接打印当前属性时,会显示当前属性的实际值,而json序列化之后,会输出当前属性的原始值,因此就会出现对象属性位置信息没有值的情况。解决这个问题的方法就是在使用json序列化时,可以使用Vue.observable()方法,将Vue实例转换成一个普通对象,这样就会输出当前属性的实际值了。

你这个应该是在别的地方才获取到值,此时是没有的。原因是对象是引用类型,别的地方赋值之后这里也会显示,看着有值,使用json序列化深拷贝这时候的对象其实是没有。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^