vue---解决bug之获取数据
这个bug困扰了我一天,百度有很多解决方案,主要是说用v-if=“data”,判断获取到了数据的值的时候再渲染,然而对我没有用
获取到了数据,也可以显示出来,但是输出数据的属性值就为undefined
代码:
打印出来的数据是:
就是这个问题,属性值为undefined困扰了我很久。最后问群友,让我打印一下this.list的格式是字符串还是对象。用typeof(this.list)打印后,结果让我惊喜了,就是字符串。
那么为什么this.list的格式是字符串呢?明明我的list定义的是对象。原因是我在上一个页面中传递的信息用storage.set()存储时,存储的数据用JSON.stringfy()转换成了字符串。就是下面这一行代码:
找到了问题后,接下来就是解决问题了。有两种解决方案:
1.存储信息的时候,不用JSON.stringfy()把数据转换成字符串。代码:
存储数据:
获取数据:
数据可以成功渲染了
2.就是存储的时候,用JSON.stringfy()把数据转换成字符串了,获取的时候,用JSON.parse()把数据转换成json格式
注意,json.parse(data),data必须是字符串,不然会报错,不要问我为什么知道。
数据也可以成功渲染了
希望也能帮到你们
以上是 vue---解决bug之获取数据 的全部内容, 来源链接: utcz.com/z/374927.html