前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >vue中axios请求数据加载模板报错Error in render: “TypeError: Cannot read properties of undefined (reading ‘xxx‘)“

vue中axios请求数据加载模板报错Error in render: “TypeError: Cannot read properties of undefined (reading ‘xxx‘)“

作者头像
打不着的大喇叭
发布2024-03-11 16:22:35
5150
发布2024-03-11 16:22:35
举报
文章被收录于专栏:喇叭的学堂

起因:我用axios请求数据(可以看见数据了,已经请求成功的),最后加载在模板上(页面模板上有内容),但是控制台出现了一个奇怪的错误 Error in render: "TypeError: Cannot read properties of undefined (reading 'xxx')"

  • 首先我排除了单词写错的可能

但是还是控制台还是这个错误

  • 在代码中把那条语句{{ list.name }}注释掉

控制台错误消失,由此判断错误肯定就是出现在这里,也说明了模板解析过程中出现了问题。

  • 原因

那也就是可能模板解析完,axios还没有请求数据,控制台出现报错,但是axios请求完毕后,vue检测到有模板有数据变化,所以重新解析,也说明了控制台虽然报错,但是页面却加载成功的原因

  • 解决方法

在需要将请求数据加载到模板最外面的地方,加上一个 v-if 判断 list 是否存在,存在就加载出模板,不存在,这一段代码就销毁,等到数据请求回来之后,就重新解析模板,然后页面加载出来,且控制台没有错误【注意,不要用 v-show 它没有真正意义上的销毁,只是css上的显示隐藏,用了还是报错】

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-03-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档