【Vue】- 报错 Error in render: “TypeError: Cannot read properties of undefined (reading ‘nickname‘)“
在created()钩子函数请求接口并报错数据,渲染在dom元素是可以正常渲染,但是在中就会报错 Error in render: "TypeError: Cannot read properties of undefined (reading 'nickname')"
·
在created()钩子函数请求接口并报错数据,渲染在dom元素是可以正常渲染,但是在开发者工具中就会报错 Error in render: "TypeError: Cannot read properties of undefined (reading 'nickname')"
原因:
我们发现这里的 list 是vuex中state管理加载的数据,异步调用显示,然后vue渲染机制中:
异步数据先显示初始数据,再显示带数据的数据,
所以上来加载 变量 时候还是一个空对象如下:
当渲染完成后,才加载异步数据
所以在渲染时,出现的三层表达式在list中取 list 的 user 属性是不存在,再在这个对象中取其他值自然会报错,但是渲染完成后,list中的值加载好了,自然可以取到,这也就解释了为什么界面正常显示,但开发者工具会报错的原因
解决方法:
使用 v-if 来进行判断
判断是否有list.user这个属性或等于undefined,dom渲染前没有这个属性会销毁,dom渲染之后有这个会显示。
更多推荐
已为社区贡献1条内容
所有评论(0)